四元數筆記(3) 軸角表示法與四元數表示的區別

2021-10-24 08:22:25 字數 965 閱讀 6515

在不了解四元數時,很多人都錯誤的把軸角表示法當成了四元數。

軸角表示法:使用乙個3維向量表示轉軸,使用乙個角度分量表示繞該軸的旋轉角度,即(x,y,z,angle)

軸角表示法避免了gimbal lock問題,但是!!它卻不適合用來做插值,因為用它得到的插值結果會導致插值不平滑,甚至產生跳躍,這一點與尤拉角描述時相同!

對於軸角表示法的(ax,ay,az,theta),轉換成四元數描述為:

其中(ax,ay,az)表示軸的向量,theta表示繞此軸的旋轉角度

除了上述問題,還有乙個區別就是它們描述的不是同一維度下的東西。

此外,軸角表示法相當於在極座標系下來描述,它們無法進行歸一化,因此不能保證最終插值得到的向量長度相等;而四元數是在統一的四維空間,很容易實現歸一化,因此特別適合用來做插值!!!

尤拉角(pitch yaw roll)←→

四元數(第乙個值是虛部,後面三個是實部)

0.0, 0.0, 0.0←→

1.000000, 0.000000, 0.000000, 0.000000

90.0, 0.0, 0.0←→

0.707107, 0.707107, 0.000000, 0.000000

0.0, 90.0, 0.0←→

0.707107, 0.000000, 0.707107, 0.000000

0.0, 0.0, 90.0←→

0.707107, 0.000000, 0.000000, 0.707107

我們不能以軸角表示的思維去看待四元數,注意它們描述的不是乙個空間維度的!!!

矩陣 尤拉角 軸 角對 四元數隨筆

一 矩陣 在 3d 遊戲中,可以使用矩陣來表示乙個物體的旋轉。1 優點 個人認為,理解起來最為直觀。像現成的dxsdk庫中也提供了十分完善的相關介面 乙個矩陣即可表示多種變換的組合 2 缺點 每次計算都會產生誤差,因此,需要經常規範化。耗的記憶體較多些。二 尤拉角 尤拉角指的是 以世界座標係為參考座...

四元數的筆記

四元數 h a bi cj dk 共軛 h a bi cj dk 逆 h frac 所以單位四元數的共軛等於他的逆 單位四元數 絕對值為1的四元數 若實部為cos t 它的共軛作用是乙個角度為2t的轉動,轉軸為虛部的方向。四元數的優點是 只有單位四元數才能表示旋轉,所以在eigen中一般會有quat...

尤拉角與四元數

尤拉角是表達旋轉的最簡單的一種方式,形式上它是乙個三維向量,其值分別代表物體繞座標系三個軸 x,y,z軸 的旋轉角度。第一張 pitch,航空領域表示飛機的俯仰角。繞x軸轉動結果 第二張 yaw,表示飛機的偏航角,繞y軸轉動結果 第三張 roll,表示飛機的翻滾角,繞z軸轉動結果。四元數是由愛爾蘭數...