Hey ho!
Ich habe hier desen Quelltext:
Delphi-Quellcode:
procedure drawrect(p1,p2,p3,p4: TPoint);
begin
Form.Canvas.MoveTo(p1.X, p1.Y);
Form.Canvas.LineTo(p2.X, p2.Y);
Form.Canvas.LineTo(p3.X, p3.Y);
Form.Canvas.LineTo(p4.X, p4.Y);
Form.Canvas.LineTo(p1.X, p1.Y);
end;
procedure draw();
var p1,p2,p3,p4: TPoint;
begin
p1.X := round(position.X + 10*cos(2*Pi/360*-(winkel+45)));
p1.Y := round(position.Y + 20*sin(2*Pi/360*-(winkel+45)));
p2.X := round(position.X + 10*cos(2*Pi/360*-(winkel+90+45)));
p2.Y := round(position.Y + 20*sin(2*Pi/360*-(winkel+90+45)));
p3.X := round(position.X + 10*cos(2*Pi/360*-(winkel+180+45)));
p3.Y := round(position.Y + 20*sin(2*Pi/360*-(winkel+180+45)));
p4.X := round(position.X + 10*cos(2*Pi/360*-(winkel+270+45)));
p4.Y := round(position.Y + 20*sin(2*Pi/360*-(winkel+270+45)));
drawrect(p1,p2,p3,p4);
end;
und möchte damit ein Rechteck gedreht darstellen lassen. Nur irgendwie macht der das nicht ganz so wie ich möchte.
Über Canvas.Rectangle geht es nicht, da die Seiten ja schräg sein sollen, was dort ja nicht geht.
Kennt jemand eine Lösung für diese (scheinbar einfache aber für mich doch schwere) Drehung?
Flare