Aufgabe 3.2 (25 Punkte)
Seien wieder die Punkte
gegeben. Konstruieren Sie wieder eine Matrix
, die den Punkt
um die von
und
definierte Gerade um den
Winkel
dreht. Gehen Sie diesmal folgendermaßen
vor:
- Geben Sie die Gerade
, die durch
und
geht, in Parameterform an, sodass
und
.
- Konstruieren Sie einen Vektor
, sodass
, d.h.
steht orthogonal auf
und den Vektor
.
- Konstruieren Sie die Basentransformationsmatrix
,
die einen Punkt
, beschrieben in dem Koordinatensystem
,
in einen Punkt
, beschrieben in dem Standardkoordinatensystem
, überführt.
- Konstruieren Sie die Rotationsmatrix
,
die einen Punkt
um die
-Achse mit dem Winkel
dreht.
- Berechnen Sie
mit der
von Matrix4f bereitgestellten Methode und führen Sie Punkt
7. der vorherigen Aufgabe mit den folgenden Matrizen durch:
-
-
-
- Warum erhalten Sie (sofern Sie keinen Fehler gemacht haben) dasselbe
Ergebnis wie in Aufgabe 1?
Hinweis: Alle Berechnungen in den Schritten 1. bis 4. haben
exakt zu sein.
Musterlösung vom 16.05.2012:
- s. Aufgabe 1.1
- Sei
. Damit gilt
und
.
- Die Transformationsmatrix erhalten wir, indem wir die Basisvektoren
als Spalten der Matrix schreiben und in die vierte Spalte den Urpsrung
des Koordinatensystem, also
. Wir erhalten
Exkurs Lineare Algebra: Eine solche Matrix ist besonders
leicht zu invertieren, da sie die Gestalt
hat, wobei die Vektoren
und
eine Orthonormalbasis sind und
ein beliebiger Punkt. Die Inverse
ist dann
. In unserem Fall ist also
.
- Für die Rotationsmatrix erhalten wir einfach
.
- /home/cg/2012/Uebung/Blatt3/Lsg/CG12Blatt3.zip
- Die Transformation
sorgt dafür, dass alle Punkte
bezüglich des Koordinatensystems beschrieben werden, dessen
-Achse
genau der Gerade entspricht. Daher führt eine Rotation des Punktes
um die
-Achse und anschließendes Zurücktransformieren mittels
zu der gleichen Operation.