9

ゲームでクォータニオンを使用していますが、2つの方向のクォータニオンがある場合、最初のクォータニオンq1から2番目のクォータニオンq2に移動するために必要な回転クォータニオンをどのように取得できるのでしょうか。私は独学で学んでいるので、語彙に明らかな解決策が欠けている可能性があります。

方程式では、最初のものから別のものに回転するときに私がしていることは次のとおりです。q2 = r * q1

ただし、rは不明です。代数の規則はここでも重要ですか?その場合、クォータニオンを別のクォータニオンで分割することになります。これは、インターネット上で適切な説明を見つけることができません。

ゲームメーカーというプログラムを使っています

4

2 に答える 2

12

クォータニオンで「分割」するには、逆回転になるように反転します。クォータニオンを反転するには、wコンポーネントまたは(xyz)コンポーネントのいずれかを否定しますが、両方ではなく、最初に開始したのと同じクォータニオンが残ります(完全に否定されたクォータニオンは同じ回転を表します)。

次に、クォータニオンは可換ではないことを忘れないでください。それで:

q2 = r*q1
q2*q1' = r

ここで、 q1'は逆四元数であり、正しい結果を得るには、q2の右側で乗算する必要があります。

于 2012-01-09T15:04:54.443 に答える
7

このページ(euclideanspace) を参照してください。独学で四元数を理解するのに非常に興味深いものです。

ここでは、四元数の算術演算と、演算を行う計算機があります。

http://www.euclideanspace.com/maths/algebra/realNormedAlgebra/quaternions/arithmetic/index.htm

それが役に立てば幸い。

于 2012-01-10T16:15:43.803 に答える