Das ist der verwendete Code:
Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
var cx1, cy1, cx2, cy2, buffer : integer;
dc : hdc;
begin
dc := createdc('
DISPLAY',
nil,
nil,
nil);
cy1 := strtoint(edit2.Text);
//start y
cx2 := strtoint(edit3.Text);
//ende x
cy2 := strtoint(edit4.Text);
//ende y
while cy1 < cy2
do
begin
cx1 := strtoint(edit1.Text);
//start x
while cx1 < cx2
do
begin
buffer := getpixel(
dc,cx1,cy1);
cx1 := cx1 + 1;
if (buffer > 2300000)
and (buffer < 2400000)
then memo1.Lines.Add(inttostr(cx1)+'
'+inttostr(cy1));
//genauer wert: 2302444
end;
memo1.Lines.Add('
zeile '+inttostr(cy1));
//nur zum testen
cy1 := cy1 + 3;
//3 zeilen weiter springen
end;
end;
Das seltsame ist auch, dass die CPU Auslastung gerade mal um 5 - 8 % ansteigt während er arbeitet.
Werde dann mal die Methode mit Scanline testen...
Gruß
speedy