Курсовая работа: Поиск кратчайшего пути в лабиринте 2
jr:=(x-1) mod md.mr +1;
wr:=R[ir,jr];
cx:=(wr.Left+wr.Right) div 2;
cy:=(wr.Top+wr.Bottom) div 2;
w:=(wr.Right-wr.Left) div 12;
h:=(wr.Bottom-wr.Top) div 7;
wr.Left:=cx-w;
wr.Right:=cx+w;
wr.Top:=cy-h;
wr.Bottom:=cy+h;
mC.MoveTo(cx,cy);
mC.Brush.Color:=RGB(0,255,0);
mC.Pen.Width:=3;
mC.Pen.Color:=RGB(255,255,255);
mC.Arc(wR.Left, wR.Top, wR.Right, wR.Bottom, wR.Left, wR.Top, wR.Left, wR.Top);
while k<>md.x0 do begin
k:=md.Prev[k];
x:=k+1;
ir:=(x-1) div md.mr +1;
jr:=(x-1) mod md.mr +1;
wr:=R[ir,jr];
cx:=(wr.Left+wr.Right) div 2;
cy:=(wr.Top+wr.Bottom) div 2;
w:=(wr.Right-wr.Left) div 12;
h:=(wr.Bottom-wr.Top) div 7;
wr.Left:=cx-w;
wr.Right:=cx+w;
wr.Top:=cy-h;
wr.Bottom:=cy+h;