OK, ich habe ein TBitmap, welches mit weisser Farbe gefüllt wurde. Dazu gibt es im Bild einige schwarze Rechtecke.
Und nun zeichne ich eine blaue Linie hinein. Der Code sieht etwa so aus:
Delphi-Quellcode:
var Bitmap:TBitmap;
rayStartX,rayStartY,rayEndX,rayEndY:integer;
Begin
Bitmap:=TBitmap.Create;
Bitmap.LoadFromFile(getCurrentDir+'\testBild.bmp');
rayStartX:=StrToInt(Edit_rayStartX.Text);
rayStartY:=StrToInt(Edit_rayStartY.Text);
rayEndX:=StrToInt(Edit_rayEndX.Text);
rayEndY:=StrToInt(Edit_rayendY.Text);
with Bitmap.Canvas do
Begin
Pen.Color:=clBlue;
MoveTo(rayStartX, rayStartY);
LineTo(rayEndX, rayEndY);
End;
Image_Basis.Picture.Bitmap:=Bitmap; // visuelle Kontrolle, ob in TBitmap.Canvas richtig gezeichnet wurde
End;
Nun möchte ich aber herausfinden, ob die blaue Linie auf ihrem Weg schwarze Pixel getroffen hat oder nicht.
Irgendwelche Ideen?
Die einzige Lösung, die mir eingefallen ist: Statt lineTo zu nehmen, einfach in einer Schleife den Farbwert des Pixels an Stelle [x,y] auslesen, ehe die Farbe Blau für dieses Pixel gesetzt wird.