Quaternion Rotation

Erste Frage Aufrufe: 335     Aktiv: 31.03.2022 um 19:09

0
Guten Tag,
ich versuche gerade einen Vektor mithilfe von Quaternionen zu Drehen.
Jedoch Zeigt der Vektor am Ende in die entgegengesetzte Richtung. ( P'(0|0|-5) anstatt P'(0|0|5) )

Der Aufbau ist wie Folgt:

Ich möchte den Punkt P(5|0|0) um phi=90° um die Y-Achse drehen, so das er anschließend auf der Z-Achse liegt ( P'(0|0|5) ).
Dafür habe ich den Drehvektor v auf der Y-Achse (bzw. j-Achse) erstellt  mit i=0, j=1, k=0 .

Der Punkt P als Quaternion wäre
Pq = (xi+yj+zk)
= 0i+5j+0k
= 5i

und das benötigte Quaternion zum Drehen wäre
q = a+bi+cj+dk
q = cos(phi/2) + sin(phi/2)*0i+ sin(phi/2)*j  + sin(phi/2)*0k  [da i, k = 0 ist, können die Teile gestrichen werden]
q = cos(phi/2) + sin(phi/2)*j
q = cos(phi/2) + sin(phi/2)*j
und anschließend als konjugierte
q'= cos(phi/2) - sin(phi/2)*j

Substitution:
cos(phi/2) = sin(phi/2) = S

P' = q * P * q'

= ( S + Sj ) * ( 5i ) * ( S - Sj )

= ( 5Si -5Sk ) * ( S - Sj )

= 5S²i - 5S²k - 5S²k - 5S²i
 
=-10S²k | Rücksubstitution

= -10 * ( sin(90/2))k

= -5k

Wieso komme ich am Ende auf -5k und nicht auf +5k?
Laut Google müsste die Drehung gegen den Uhrzeigersinn erfolgen.

Gruß Trox
Diese Frage melden
gefragt

Punkte: 10

 
Kommentar schreiben
0 Antworten