Своим опытом делится Олег Кулабухов:
Рисуем линию от 10,10 до 100,100 и окружность радиусом 10:
procedure DDAProc(x : integer; y : integer; LParam : LongInt) {$IFDEF WIN32} stdcall; {$ELSE} ; export; {$ENDIF} begin if x mod 10 = 0 then TCanvas(LParam).Ellipse(x - 10, y - 10, x + 10, y + 10); end; procedure TForm1.Button1Click(Sender: TObject); begin LineDDA(10, 10, 100, 100, @DDAProc, {$IFDEF WIN32} LongInt(Form1.Canvas) {$ELSE} Form1.Canvas {$ENDIF} ); end; |
[001914]