三維計算中,經常需要計算方向,假定三維座標係為右手系,+z向上,+y向前,+x 向右。
通常的作法是,getlookat,獲取eye和target,來計算dir: dir = target - eye;除此,可以使用四元數來計算:
ogre::vector3 dir = mnode->getorientation()*ogre::vector3::unit_y;
以上**可以理解為:相機的預設朝向為y軸正向,經過乙個旋轉四元數,產生的新方向為 :newdir = quat * origindir;
同時,四元數和向量相乘,還可用於控制相機移動:
movedir = quat * movedirection;
其中,movedirection.x 表示:左右移動,(取值為:-1,向左;0:未移動;1向右)
movedirection.y 表示:左右移動,(取值為:-1,向左;0:未移動;1向右)
movedirection.z = 0;
四元數和尤拉角以及方向余弦的區別
2014 03 28 22 51 2078人閱讀收藏 舉報 空間座標變換的矩陣表示法 4 尤拉角定義的是三次基本旋轉的三個角度,旋轉順序和旋轉參考軸隨不同領域有不同,在飛機上常用的是z x y規則,三次順序旋轉角度是偏航,俯仰,橫滾,具體還要指明是旋轉的 參考係還是旋轉的體座標系通過這三個基本旋轉角...
四元數和尤拉角
1.尤拉角 我們這裡談論尤拉角只討論在笛卡爾座標系下,不考慮飛機座標系 我不確定正規是不是叫這個名字 那種。也就是右手定則確定的笛卡爾座標系。可以把x和y放在水平面,z軸朝上,這樣想象一下。然後,很顯然存在三種旋轉方式,也就是分別繞x,繞y和繞z旋轉。我們分別把三種旋轉稱為roll 繞x軸旋轉 pi...
matlab 角度轉四元數 尤拉角和四元數
用一句話說,尤拉角就是物體繞座標系三個座標軸 x,y,z軸 的旋轉角度。尤拉角將方位 角位移 分解為繞三個互相垂直軸的旋轉。任意三個軸和任意順序都可以,但最有意義的是使用笛卡爾座標系並按一定順序所組成的旋轉序列。最常用的約定是所謂的 heading pitch bank 約定。它的基本思想是讓物體開...