Re[5]: Чем рисовать WAV ?
От: Lopcom  
Дата: 24.04.04 06:52
Оценка:
A>>>>>Буферизацию делал, не помогло.

Не помогло от моргания или скорости?
От скорости и не должно помогать.

A>
A>CDC.Polyline(CPointList.Data(), CPointList.Size());// ****************
A>

A>Тормоза в линии помеченно звёздочками. Рисую как прямо на экран, так и в memory DC — по фигу, скорость одинаковая.

По поводу скорости:
Как я уже сказал, лучше использовать прямое обращение к памяти, то-есть работать с DIBSECTION.
Такие функции, как SetPixel/GetPixel и тот же Polyline, очень медленные при работе с DC (любым, здесь нет разницы MemoryDC это или нет). Каждый раз когда вызывается SetPixel, происходит переход в режим ядра, где уже обрабатывается сама прорисовка. Такое переключение на каждый пиксел очень ресурсоёмко. Polyline, подозреваю, просто делает серию вызовов SetPixel со всеми вытекающими.

По поводу моргания:
Покажите код буферизации и прорисовки.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.