Ekraanikoordinaate hakatakse lugema vasakult u"levalt. Mo~nigikord on meil
aga lihtsam arvutada koordinaate keskelt vasakule ja paremale (ning
üles-alla). Selleks tuleb joonistamisel lihtsalt igale punktile poole
ekraanipikkuse jagu juurde liita.
uses graph;
type
punkt=record
x: integer;
y: integer;
end;
punktid= array[1..100] of punkt;
var p : punktid;
keskp: punkt;
arv: integer;
procedure algus;
var d, m: integer;
begin
p[1].x:=0;
p[1].Y:=0;
p[2].x:=100;
p[2].Y:=0;
p[3].x:=0;
p[3].Y:=100;
arv:=3;
d:=detect;
initgraph(d, m, '');
keskp.x:=getmaxx div 2;
keskp.y:=getmaxy div 2;
end;
procedure joonista(p: punktid; kp: punkt; kogus: integer);
var i: integer;
begin
for i:=2 to kogus do
begin
line(kp.x+p[i-1].x, kp.y+p[i-1].y, kp.x+p[i].x, kp.y+p[i].y);
end;
line(kp.x+p[arv].x, kp.y+p[arv].y, kp.x+p[1].x, kp.y+p[1].y);
end;
begin
algus;
joonista(p, keskp, arv);
readln;
end.