Hey Big Santa!
Meine erste Frage:
Welcher Punkt des Rechtecks ist die RechteckPosition? Das heißt um welchen Punkt dreht sich das Rechteck? Ich nehme anhand der zweiten zeichnung an, dass dieser Punkt auf der Hälfte der unteren Kante liegt. Liege ich da Richtig in meiner Annahme?
Nein. Die RechteckPosition ist der Mittelpunkt(RechteckTextur.Width/2, RechteckTextur.Height/2) der RechteckTextur.
Um eine Drehung des Punktes A um den Punkt M (Position des Rechtecks) um den Winkel §\varphi§ im Uhrzeigersinn zu drehen, musst du folgende Formel verwenden:
§x = M_\text{x} - (A_\text{x} - M_\text{x}) * \cos (\varphi) + (A_\text{y} - M_\text{y}) * \sin (\varphi)§
§y = M_\text{y} - (A_\text{x} - M_\text{x}) * \sin (\varphi) - (A_\text{y} - M_\text{y}) * \cos (\varphi)§
In deinem Fall hat der zu drehende Punkt A die Koordinaten (§M_\text{x}§ | Höhe des Rechtecks + §M_\text{y}§ + Radius des Kreises)
Ich verstehe nicht was Punkt A ist. In meinem Fall würde die Formel ja so aussehen:
x = RechteckPosition.X - (Ax - RechteckPosition.X) * cos(Rotation des Rechtecks) + (Ay - RechteckPosition.Y) * sin(Rotation des Rechtecks)
y = RechteckPosition.Y - (Ax - RechteckPosition.X) * sin(Rotation des Rechtecks) - (Ay - RechteckPosition.Y) * cos(Rotation des Rechtecks)
Sind die Koordinaten von Punkt A in meinem Fall(wenn RechteckPosition der Mittelpunkt von RechteckTextur ist) immer:
X-Koordinate = RechteckPosition.X
Y-Koordinate = RechteckTextur.Height / 2 + RechteckPosition.Y + Radius des Kreises?
Was ist "Radius des Kreises"? Ist der Radius des Kreises in meinem Fall nicht auch "RechteckTextur.Height / 2" ?