matrix invertieren
-
hallo
wie lässt sich folgende matrix einfach invertieren ( ohne Rechnung).
cos(x) -sin(x) 0 Tx
sin(x) cos(x) 0 Ty
0 0 1 Tz
0 0 0 1
-
Wenns nen orthogonal Matrix ist einfach transponieren.
edit:
Und es ist eine orthogonalmatrix wenn es sich um eine dreh- oder spiegelmatrix handelt.[ Dieser Beitrag wurde am 26.01.2003 um 19:20 Uhr von xroads42 editiert. ]
-
Hi,
das Invertieren von Matrizen > 3x3 ist eine nicht ganz triviale Aufgabe. Die Formeln und eine Implementierung u.a. in C findest Du hier http://www.intel.com/design/PentiumIII/sml/24504301.pdf
Ciao,
Stefan
-
Was ist invertieren?
-
Deine Matrix läßt sich zerlegen in:
A B ( 1 0 0 t1 ) ( a -b 0 0 ) ( 0 1 0 t2 ) * ( b a 0 0 ) ( 0 0 1 t3 ) ( 0 0 1 0 ) ( 0 0 0 1 ) ( 0 0 0 1 ) mit a = cos(x), b = sin(x) Das erste ist eine Translationsmatrix, die Inverse dazu: ( 1 0 0 -t1 ) ( 0 1 0 -t2 ) ( 0 0 1 -t3 ) = A^-1 ( 0 0 0 1 ) Die zweite ist eine orthogonale Matrix also einfach transponieren: ( a b 0 0 ) ( -b a 0 0 ) ( 0 0 1 0 ) = B^-1 ( 0 0 0 1 )
So, jetzt in umgekehrter Weise zusammenmultiplizieren. Fertig!
also: (A*B)^-1 = B^-1 * A^-1
MfG Jester
edit: kleinen Fehler beseitigt
[ Dieser Beitrag wurde am 26.01.2003 um 21:17 Uhr von Jester editiert. ]
-
thanks genau das was ich wissen wollte