Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Как быстрее всего сравнить содержимое двух TBitMap? [D5, Win95/98, Win2k, WinXP]


TankMan ©   (2002-12-14 00:31:00) 

Нужно достаточно большое колл-во раз за короткий промежуток, сравнивать некоторые куски 2х битмапов... попиксельный вариант тут не подойдет... я думаю, потому что это слишком большая нагрузочка выйдет... может есть способ лучше?


TankMan   (2002-12-15 11:03:00) [1]

Спасибо попробую...


MBo   (2002-12-15 06:12:00) [2]

1) Получаешь адрес i-й строки развертки битмапа с помощью ScanLine[i]
2) Если не с левого края нужно сравнивать, получаешь адрес нужного куска (j-й точки), смещая указатель на j*размер пиксела
3) CompareMem
4) повтор для всех нужных строк


TankMan   (2002-12-15 03:14:00) [3]

Ааа...эээ... а как вычислять CRC?


Rouse_   (2002-12-14 00:44:00) [4]

ScanLine, - намного быстрее попиксельного, а вообще если нужно просто выяснить что два куска различны, вычисляй их контрольную сумму (CRC32)

Желаю успехов


Наверх

Титульная страница Поиск, карта сайта Написать письмо