Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.184 Beiträge
Delphi 12 Athens
|
Re: Vergleichen zweier BitMaps
12. Nov 2003, 19:41
Ne, ich glaub der Denkfehler liegt bei mir. Funktioniert aber dennoch.
Kannst ja auch so rechnen:
Delphi-Quellcode:
Var R1, G1, B1, R2, G2, B2, Re, Ge, Be: Byte;
{je Pixel}
R1 := Bild1.Canvas.Pixels[X, Y] and $0000FF;
G1 := (Bild1.Canvas.Pixels[X, Y] and $00FF00) shr 8;
B1 := (Bild1.Canvas.Pixels[X, Y] and $FF0000) shr 16;
R2 := Bild2.Canvas.Pixels[X, Y] and $0000FF;
G2 := (Bild2.Canvas.Pixels[X, Y] and $00FF00) shr 8;
B2 := (Bild2.Canvas.Pixels[X, Y] and $FF0000) shr 16;
Re := Ord(R1 - R2);
Ge := Ord(G1 - G2);
Be := Ord(B1 - B2);
Bild3.Canvas.Pixels[X, Y] := RGB(Re, Ge, Be);
Auch wenn es nicht ganz richtig ist, ist es doch etwas schneller:
Bild3.Canvas.Pixels[X, Y] := (Bild1.Canvas.Pixels[X, Y] xor Bild2.Canvas.Pixels[X, Y]) and $00FFFFFF;
$2B or not $2B
|
|
Zitat
|