Hallo liebe Delphi-Freunde,
ich möchte von einer Position aus abhängig von einer Case-Anweisung verschiedene Winkelpositionen berechnen, und von dem Winkel aus eine Gerade zeichnen. Der Winkel soll sich dabei um 90 Grad verschieben. Leider verstehe ich nicht, wie ein solcher Winkel berechnet wird, da nach folgendem Code ja eine neue Position berechnet wird und kein neuer Winkel? Zudem ist y immer =0 und verschiebt sich nicht. Wie berechne ich ausgehend von einer Position einen Winkel der sich jeweils um 90grad dreht? Hat einer eine Idee?
Vielen Danke für jegliche Hilfe.
Delphi-Quellcode:
case Zeichnen[i] of
'Forward':
begin
x := x + round(sin(90/ 180 * PI));
y := y + round(cos(90/ 180 * PI));
end;
'Backward':
begin
x := x + round(sin(90 / 180 * PI));
y := y + round(cos(90 / 180 * PI));
end;
'Zeichne': Form1.Image1.Canvas.LineTo(x,y);
end;
end;