procedure TForm1.Button4Click(Sender: TObject);
begin
winkel:=strtofloat(edit3.Text);
//umrechnen in pi und volle drehung der winkel
if winkel <= 180
then hwink:=((winkel/180)*pi)
else hwink:=-(((winkel-180)/180)*pi) ;
swink:=sin(hwink);
for k:=1
to (n-1)
do
begin
//x-werte differenz zu letztem n punkt last!!
//letzten punkt holen
//mit x-werte subtrahieren
xdel:=xp[n-k]-xp[last];
//delta x wert n-k
ydel:=yp[n-k]-yp[last];
//delta y wert
//vorzeichen bestimmen
if xdel>0
then xvorz:=true
else xvorz:=false;
if ydel>0
then yvorz:=true
else yvorz:=false;
//berechnung neuerwert sin bzw,cos
lange:=sqrt((xdel*xdel)+(ydel*ydel));
// lange:=round(lange);
winklast:=(radtodeg(arctan(ydel/xdel)));
//winkel von last x-achse zu punkt
//4.quadrant
if (xvorz
and yvorz)=true
then drehw:=winklast - winkel;
//4.quadrant
//3.quadrant
if xvorz=false
then //3.quadrant
begin
if yvorz=true
then drehw:=180+winklast - winkel;
end;
//2.quadant
if xvorz=false
then //2.quadrant
begin
if yvorz=false
then drehw:=180+winklast-winkel;
end;
//1.quadrant
if xvorz=true
then
begin
if yvorz=false
then drehw:=(winklast-winkel);
end;
//drehw:=winklast - winkel; //winkel nach drehung um winkel zur x durch last
drehw:=degtorad(drehw);
//drehwinkel x achse in rad
//richtungssinn der winkel
xs[1]:=xp[last];
ys[1]:=yp[last];
xs1:=(xp[last]+(lange*(cos(drehw))));
xs[k+1]:=round(xs1);
//K
ys1:=(yp[last]-(lange*(-sin(drehw))));
ys[k+1]:=round(ys1);
//end;
// for a:=1 to h do
// begin
// xs[k]:=xs[n-k];
// ys[k]:=ys[n-k];
// end;
//dist:='x '+floattostr(xs[k])+' y '+floattostr(ys[k]);
//listbox2.items.Add(dist);
dist:=floattostr(n-k)+'
'+'
x '+floattostr(xs[k+1])+'
y '+floattostr(ys[k+1]);
listbox2.items.Add(dist);
// if siny2 >0 then xs[k]:=xp[n-k]+sinx2 ;
//s[k]:=yp[n-k]y-siny2 ;
//if ydel>0 then ys[k]:=yp[n-k]+siny2
// else ys[k]:=yp[n-k]-siny2; //neue y koordinate
image1.canvas.pen.color:=clred;
image1.canvas.rectangle(xs[k+1]-3,ys[k+1]-3,xs[k+1]+3,ys[k+1]+3);
//k
end;
//zeichnen der gedrheten figur
for k:=1
to (n-1)
do
begin
image1.canvas.moveto(xs[k],ys[k]);
image1.canvas.lineto(xs[k+1],ys[k+1]);
end;
image1.canvas.moveto(xs[n],ys[n]);
image1.canvas.lineto(xs[1],ys[1]);
// image1.canvas.brush.style:=bsclear;
image1.canvas.pen.color:=clblack;
end;