![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Отображение двумерного массива максимально быстро [D5, Win95/98, WinME, NT4, Win2k, WinXP]
Mihon from Haba © (2002-11-29 18:25:00)Приветствую Вас мастера. Проблемма в следующем - имеется двумерный битовый массив ("черно-белый"), его нужно максимально быстро показать юсеру (или преобразовать в BitMap). Неважно на чем, не важно как, самое главное БЫСТРО. А он зараза большой (~2000*~2000). Времени не больше секунды. Заранее благодарен за помощь.
Mihon from Haba (2002-11-30 18:47:00) [1]Огромное всем спасибо, если честно не ожидал такой активности. Приятно удивлен.
VladimirVasilyev (2002-11-30 10:28:00) [2]DirectX:
1.IDirectDrawSurface7::Lock
2.DDSURFACEDESC.lpSurface получаешь адрес памяти поверхности.
3.копируешь по этому адресу свои данные
4. UnLock
5. BltFast
6. Flip
MBo (2002-11-29 18:30:00) [3]полагаю, еще и StretchDiBits может пригодиться, так как, вероятно, будешь сжимать
Mihon from Haba (2002-11-29 18:30:00) [4]в массиве храняться true - "белый" и false - "черный"
MBo (2002-11-29 18:29:00) [5]SetDiBitsToDevice - сразу на canvas или SetDiBits - в битмап.
кроме массива, заполни еще структуру tbitmapinfo
LongIsland (2002-11-29 18:27:00) [6]Массив ЧЕГО?