Entschuldigung, das ich mich solange nicht gemeldet habe. Hatte im Moment viel zu tun.
der Fehler lag im ABS vor xn und yn.
Code:
procedure TForm1.ToolButton2Click(Sender: TObject);
var winkel,x,y,xn,yn,xc,yc,u,d :real;
Img : TImage;
i:integer;
begin
winkel:=strtofloat(drehwinkel.Text);
xc:=max1-min1;
yc:=max2-min2;
label1.caption:=floattostr(xc)+' '+floattostr(yc);
for i := stringgrid1.RowCount-1 downto 1 do
begin
x:=strtofloat(stringgrid1.Cells[1, i]);
y:=strtofloat(stringgrid1.Cells[2, i]);
u:= Winkel * Pi/180 + arctan2(Y-Yc,X-Xc);
d:= sqrt((X-Xc)*(X-Xc) + (Y-Yc)*(Y-Yc));
xn:=((Xc+d*cos(u)));
yn:=((Yc+d*sin(u)));
stringgrid1.Cells[3,i]:=floattostr(xn);
stringgrid1.Cells[4,i]:=floattostr(yn);
end;
zeichnen;
end;
mit diesem Code funktioniert jetzt das Drehen.
Jetzt ist immer noch das Problem, das die Zeichnung teilweise außerhalb des Images liegt.
Schlecht wäre es auch nicht, wenn er die Imagegröße automatisch anpassen würde.