欧拉角与四元数
1.歐拉角
歐拉角是表達旋轉的最簡單的一種方式,形式上它是一個三維向量,其值分別代表物體繞坐標系三個軸(x,y,z軸)的旋轉角度。? ??
參考坐標系:
第一張:pitch,航空領域表示飛機的俯仰角。繞X軸轉動結果; 第二張:yaw,表示飛機的偏航角,繞Y軸轉動結果; 第三張:roll,表示飛機的翻滾角,繞Z軸轉動結果。
2.四元數
四元數是由愛爾蘭數學家威廉?盧云?哈密頓在1843年發現的數學概念,在圖形學中有重要的應用。在3D程序中,通常用四元數來計算3D物體的旋轉角度,與矩陣相比,四元數更加高效,占用的儲存空間更小,此外也更便于插值。 可以把四元數看做一個標量和一個3D向量的組合。實部w表示標量,虛部表示向量標記為V或三個單獨的分量(x,y,z),則四元數可以記為[ w, V]或[ w,(x,y,z)]。正規化四元數可以表示為:在三維中,可以用四元數表示繞著某個軸的旋轉,如下公式所示:
α表示旋轉的角度,cos(βx), cos(βy) 和cos(βz)表示定位旋轉軸的方向余弦
根據歐拉旋轉定理,任何兩個坐標系的相對定向,可以由一組四個數字來設定;其中三個數字是方向余弦,用來設定特征矢量(固定軸);第四個數字是繞著固定軸旋轉的角值。這樣四個數字的一組稱為四元數。上面這段話闡述了四元數的原理:三維空間內所有的旋轉都可以用四個數來表示。在通過四元數方法來計算旋轉,已經替代了方向余弦方法,這是因為它能減少所需的工作,和它能減小舍入誤差。在電腦圖形學里,四元數與四元數之間,簡易執行插值的能力是很有價值的。
總結
- 上一篇: 3DSlicer26:Add Exten
- 下一篇: C语言实现MATLAB 6.5中M文件的