Du bist nicht angemeldet.

Stilllegung des Forums
Das Forum wurde am 05.06.2023 nach über 20 Jahren stillgelegt (weitere Informationen und ein kleiner Rückblick).
Registrierungen, Anmeldungen und Postings sind nicht mehr möglich. Öffentliche Inhalte sind weiterhin zugänglich.
Das Team von spieleprogrammierer.de bedankt sich bei der Community für die vielen schönen Jahre.
Wenn du eine deutschsprachige Spieleentwickler-Community suchst, schau doch mal im Discord und auf ZFX vorbei!

Werbeanzeige

1

16.03.2008, 14:12

Rotations Matrix

Warum rotiert eine Rotationsmatrix, ich kann mir garnichts drunter vorstellen, warum diese matrix etwas rotiert. Bei wikipedia sehe ich auch nur, wie man diese Aufbaut, aber warum ausgerechnet diese matrix eine Punkt rotiert, weiß ich nicht. Kann mir das wer erklären?

S.Seegel

2x Contest-Sieger

  • Private Nachricht senden

2

16.03.2008, 14:27

Überlege dir das Ganze doch mal in 2D: wenn du einen Punkt in der XY-Ebene um den Ursprung rotieren willst, wie berechnen sich aus den Koordinaten eines Punktes x|y seine neuen - rotierten - Koordinaten x'|y' ? (Stichwort: trigonometrische Funktionen)

Dann schaue dir an, wie man eine Matrix mit einem Vektor multipliziert (zunächst noch in 2D).

Dann solltest du in der Lage sein, die Rotationsrechnung als 2D-Matrix-Vektor-Multiplikation darzustellen.

Um das Ganze in 3D zu übertragen, wieder ganz einfach anfangen: rotiere um eine der Koordinatenachsen. Das entspricht nämlich der 2D-Rotation in der Ebene, die durch die beiden anderen Achsen aufgespannt wird (wenn du z.B. um die X-Achse rotieren willst, entspricht das einer Rotation in der YZ-Ebene). Die Koordinate auf der Achse, um die du rotierst, bleibt unverändert.
Auch diese Rechnung kann wieder als (jetzt 3D) Matrix-Vektor-Multiplikation dargestellt werden.

Und eine Rotation in 3D um eine beliebig im Raum positionierte Achse läßt sich in Translationen (Verschiebungen) und Rotationen um Koordinatenachsen zerlegen.