3D-rotation um vektor
-
Hallo!
ich habe eine kreis von vertices. diese erzeuge ich in x/z im ursprung.
nun möchte ich diesen kreis so rotiere, dass er normal auf einen Vektor (x/y/z) steht. (d.h. um das zentrum des kreises (welches im ursprung dess Koord. sys. liegt) drehen).
ich steh leider gerade vollkommen auf der leitung und komm nicht weiter..vll hilft ein kleines bilchen beim verstehen des problems:
http://spong3bob.sp.funpic.de/question.png
ich will das ganze z.B. so drehen, dass der rote vektor normal auf meinen kreis steht.
-
Kreuzprodukt von der Normale des Kreises und "Zielvektor" ergibt die Drehachse.
Dann berechnest du über das Punktprodukt von Normale und Zielvektor den Winkel zwischen den beiden Vektoren.Dann kannst du die Matrix so berechnen:
http://de.wikipedia.org/wiki/Drehmatrix#Drehmatrizen_des_Raumes_R.C2.B3 (siehe 4. PUnkt) (vorher Drehachse normieren)