Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2007.02.11;
Скачать: CL | DM;

Вниз

Скорость прорисовки   Найти похожие ветки 

 
novarm44   (2006-06-13 21:10) [0]

Здравствуйте!
Пишу CAD пакет и для рисования линий, дуг и т.п. используются стандартные методы Canvas и объект TImage в качестве экрана. Возникла проблема очень медленной работы перерисовки при больших проектах (когда нужно отобразить несколько десятков тысяч линий, например). Каким образом можно ускорить графику, подходит ли DirectX на эту роль. Пока только попробовал DelphiX.PaintBox вместо TImage - получилось тоже самое по скорости, только еще и перерисовка каждого элемента в real-time.


 
Rial ©   (2006-06-13 22:25) [1]

Подходят и Direct3D и OpenGL.
Скорость вырастет на порядок.


 
miek ©   (2006-06-14 08:12) [2]

Несколько десятков тысяч линий вполне можно осилить и без аппаратного ускорения. Нужно использовать заэкранную прорисовку (в памяти), а также быструю низкоуровневую библиотеку и режим 8 или 16 бит на пиксел. Библиотека - например FastLib, SpriteUtils.
Для использования видеоакселератора нужно еще убедиться, что он такое потянет - это не очевидно.


 
Pavia ©   (2006-06-14 16:20) [3]

novarm44  
Посмотри исходники CAD.
Я бы использовал либы OpenGl или сам написал прорисовку.


 
AlexeyT ©   (2006-06-16 01:26) [4]

Кажется, TImage лучше не использовать в качестве "экрана". Вместо него попробуй рисовать на, например, TPanel.

У меня с рисованием на канве TImage были дикие тормоза...


 
tButton ©   (2006-06-16 04:41) [5]


> TImage лучше не использовать в качестве "экрана". Вместо
> него попробуй
System->PaintBox
=)


 
WondeRu ©   (2006-06-16 09:10) [6]

Мой рецепт: OpenGL + TPanel(с отключенной собственной прорисовкой)



Страницы: 1 вся ветка

Текущий архив: 2007.02.11;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.036 c
2-1169633749
KyRo
2007-01-24 13:15
2007.02.11
Вопрос по ListBox


2-1169493094
Виталий Гаврилов
2007-01-22 22:11
2007.02.11
Создание программы типа GoogleToolbar


2-1169458134
daser
2007-01-22 12:28
2007.02.11
Как отловить перемещение по записям в гриде?


2-1169763713
frameZ
2007-01-26 01:21
2007.02.11
TreeView + BDE


15-1169404742
Garacio
2007-01-21 21:39
2007.02.11
рецепт создания БД