我有一個物體沿着X,Y,Z三維向量傳播......我需要根據每個軸旋轉物體(x-軸,y軸和z軸)。OpenGL矢量方向(X,Y,Z)
如何在度數方面獲得這些測量結果?
(我使用OpenGL和只知道glRotatef(...)
)glRotatef(...)文檔here] 看着this問題,答案給出
viewvector =
<x, y, z>
R =開方( X 2 + Y 2 + Z 2)
披= arctan2(Y,X)
THETA =反餘弦(Z/r)的
但從this wiki頁我明白:
披=>圍繞Z軸
THETA角= [從伊格納西奧巴斯克斯 - 拉姆斯編輯]> x與角度/ y飛機
但我如何找到Y?還是我需要?
真正的問題是,我怎麼用glRotatef(...)
來表示這個?
第三個角度是任意的,因爲它不影響行進方向。如果你想強制一個特定的值,你需要另一個約束。 – 2012-04-04 04:58:09
因此,如果我要正確理解,'glRotatef(theta,1.0,1.0,0.0)'和'glRotatef(phi,0.0,0.0,1.0)'會起作用嗎? glRotatef(phi,0,0,1); – Wallter 2012-04-05 03:22:07
glRotatef(phi,0,0,1); glRotatef(THETA,1,0,0); – 2012-04-05 03:57:59