4

クォータニオン q と、任意の方向に向けることができる座標軸を形成する 3 つの 3D ベクトル (vx、vy、vz) が与えられますが、これらはすべて互いに垂直であり、3D 空間を形成します。

クォータニオン q が一部の 3D ベクトル (vx、vy、vz) と同じ方向 (または反対方向) に回転しているかどうかを確認するにはどうすればよいですか?

4

1 に答える 1

3

q = (w,x,y,z) の場合、w は「スカラー部分」であり、qv=(x,y,z) は「ベクトル部分」であり、qv とそれぞれの間の角度を計算できます。内積を使用した基底ベクトル vx、vy、vz。

cos(シータ) = (qv dot vx) / ( |qv| * |vx|)

cos(theta) が +1 の場合、q の回転軸はその基底ベクトルに平行です。

cos(theta) = -1 は、それらが逆平行であることを意味します。

于 2010-08-19T18:08:30.243 に答える