Delphi, Canvas, linie według wyznaczonych współrzędnych

0

Witam.
Mam następujący problem.
Mam współrzędne np.

X:375Y:196 
X:386Y:188 
X:393Y:182 
X:398Y:179 
X:402Y:175 
X:404Y:175 
X:405Y:174 
X:406Y:173 
X:408Y:173
 

i chcę namalować prostą według tych współrzędnych takim sposobem:

img.canvas.moveto(x1,y1);
img.canvas.lineto(x2,y2);

jako x1, y1 i x2 y2 chcę mieć podane współrzędne takie:

X196 < x1, y1
X188 < x2, y2

(2 pierwsze linie z początku)

Mam teraz następujący problem. Nie wiem jak zrobić, by pętla uwzględniła wszystkie podane wspolrzedne, wyodrebniala dwie pierwsze linie, pobierała wspolrzedne (x1,y1,x2,y2) i malowała prostą.
Przypominam:

img.canvas.moveto(x1,y1);
img.canvas.lineto(x2,y2);

I usuwała już namalowane współrzędne prostych i rysowała linie az do konca podanych wspolrzednych.
Proszę o pomoc :)

0

Wczytujesz współrzędne do tablicy (np a: Array of TPoint) i robisz:

img.Canvas.MoveTo(a[0].x, a[0].y);
For i := 1 to High(a) do
img.Canvas.LineTo(a[i].x, a[i].y);

Poczytaj o: array, SetLength, High, TPoint i wszystko będzie jasne.

Aha najprościej malować po TPaintBox'ie, umieść kod który jest odpowiedzialny za malowanie w metodzie OnPaint komponentu.

b

1 użytkowników online, w tym zalogowanych: 0, gości: 1