|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
|
Опции темы | Поиск в этой теме |
20.09.2021, 11:03 | #21 |
фрилансер
Участник клуба
Регистрация: 11.10.2019
Сообщений: 1,010
|
1) библиотеки
2) менее детская функциональность но точно не компилятор ---- 7 метров - это нынче не размер для приложения, а крохи |
20.09.2021, 12:53 | #22 |
Участник клуба
Регистрация: 03.06.2009
Сообщений: 1,834
|
у меня простой детский клавиатор раздулся до 56 Мб, но только когда я в него загрузил 1.025.000 слов и фраз.... но упаковщик всё это ужал до 3,2 Мб. Delphi 5 или 7 версия - одинаково.
а что будет тут, на Delphi 10, даже не знаю....
Программирование - это единственный способ заставить компьютер делать то, что тебе хочется, а не то, что приходится.
|
29.09.2021, 04:51 | #23 | |
Я самый любопытный
Участник клуба
Регистрация: 24.07.2012
Сообщений: 1,950
|
Цитата:
Выкладываю фрагмент своей программы по этому вопросу, можете посмотреть. Если есть идеи как ускорить графику, можете написать. |
|
29.09.2021, 06:24 | #24 |
фрилансер
Участник клуба
Регистрация: 11.10.2019
Сообщений: 1,010
|
newerow1989, я дельфи не знаю, так что покопаться не смогу. Но точно могу сказать, что если есть вывод разом кучи линий, то будет быстрее работать, если переделать алгоритм так, чтобы массив точек накапливался в контейнере, а затем разом выводился при помощи Polyline или PolyPolyline.
Ведь MoveTo/LineTo - это многократное обращение к железяке, а это - тормоза. А вот в ОЗУ накопить данные - это быстро. Затем производится одно обращение к железяке, а железяка разом бабахает всё на экран |
30.09.2021, 01:29 | #25 |
Форумчанин
Регистрация: 21.01.2012
Сообщений: 240
|
Вроде как в процедуре TForm1.LineSozw делается парсинг строк постоянно. Т.е. при каждой отрисовке берется строка, разбивается на куски, превращается в цифры, которые используются при рисовании линий.
Код:
Может отпарсить их заранее один раз при старте проги, и потом уже работать с координатами, сохраненными в численные массивы, и из них считать положения объектов с учетом текущего поворота камеры. Тогда не будет кучу раз вызываться работа со строками и всякие StrToFloat. Может быть это они тормозят процесс? |
30.09.2021, 07:29 | #26 |
Участник клуба
Регистрация: 03.06.2009
Сообщений: 1,834
|
думаю, если автор программы сам их отключит/закоментирует и запустит программу, то увидит результат. без подписей, кажется, должно быстрее работать. если да, то будет думать над ускорением.
Программирование - это единственный способ заставить компьютер делать то, что тебе хочется, а не то, что приходится.
|
04.10.2021, 04:37 | #27 | |
Я самый любопытный
Участник клуба
Регистрация: 24.07.2012
Сообщений: 1,950
|
Цитата:
Линию толщиной в 1 пиксель я могу нарисовать с помощью алгоритма, но Pen.Width >= 2 уже сложнее придумать алгоритм. |
|
04.10.2021, 07:17 | #28 |
фрилансер
Участник клуба
Регистрация: 11.10.2019
Сообщений: 1,010
|
всё абсолютно то же самое, только перед рисованием:
CreatePen SelectObject (не забыть после рисования DeleteObject для пера, а вернутое из SelectObject - поставить обратно) |
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Фото звездного неба веб камерой. | Vomifor | Мультимедиа в Delphi | 20 | 09.01.2015 01:44 |
Карта | kuba1981 | JavaScript, Ajax | 5 | 30.08.2012 13:43 |
Карта | Кристинка89 | Помощь студентам | 1 | 27.04.2012 18:15 |
построить карту звездного неба на C# | Svetlanka_ | C# (си шарп) | 16 | 30.08.2011 16:47 |