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

Вниз

Подскажите как можно битмап А сравнить с Битмапом Б и отличия   Найти похожие ветки 

 
xex   (2004-03-05 08:56) [0]

записатьв битмап А, но при этом не просто целиком переписывать одим в другой, а сравнивая допустим блоками и рез-тат записать также блоками. Заранее благодарен .


 
WondeRu ©   (2004-03-05 09:34) [1]

Если честно, то не очень догнал, что надо!
Но попробуй копировать Б в А с помощью BitBlt, используюя разные флаги dwRop(последний параметр)


 
xex   (2004-03-09 13:37) [2]

К сожалению мне не нужно просто скопировать, допустим, в А и в Б находятся одинаковое изоображение, в следующий момент времени изоображение поменялось, но незначительно(ну пятно красное появилось в левом верхнем углу),сравниваем их и, чтобы в битмап С не передавать все изоображени пересылаем порцию данных с инфой о том что изменилось, т.е. чтобы трафик не грузить сетевой.


 
Mihey ©   (2004-03-09 15:41) [3]

Самое простое:

for y := 0 to A.Height-1 do
for x := 0 to A.Width-1 do
 begin
  If A.Canvas.Pixels[x,y] <> B.Canvas.Pixels[x,y] then
   AddDataToSend(x, y, A.Canvas.Pixels[x,y]);
 end;

// procedure AddDataToSend(x, y: Integer; c: TColor);

Это самое лёгкое, но и самое медленное. Ускорение - использовать ScanLine или что-то ещё.


 
Diamond Cat ©   (2004-03-10 20:34) [4]

bitblt + F1



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

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

Наверх




Память: 0.47 MB
Время: 0.025 c
4-1081163464
Arturchik
2004-04-05 15:11
2004.05.23
Не хочет работать в OnShow(OnCreate): if Process32First(handler,d


1-1083926326
som
2004-05-07 14:38
2004.05.23
Import данных с MS Excel


14-1083361002
Братан
2004-05-01 01:36
2004.05.23
Кто поможет вспомнить игру?


1-1084075854
glGLU
2004-05-09 08:10
2004.05.23
ListBox &amp; Message


1-1084140499
CraKerX
2004-05-10 02:08
2004.05.23
Как менять свойства объекта созданного динамически?