我希望能夠用實作一個模型旋轉,并獲取旋轉后特定坐標點的新的距離。但是,如果使用glRotatef函式,畫面呈現是旋轉的,但是提取的坐標是和旋轉前相同的。請問這個坐標是要單獨計算,還是有辦法直接獲得。我的display函式代碼如下:
void display()
{
glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);
glMatrixMode(GL_MODELVIEW);
glLoadIdentity();
//glTranslated(0.0, 0.0, -0.25);//gavab人臉的相關資訊顯示
glTranslated(0.0, 0.0, -3);
glMultMatrixd(pModelViewMatrix);
glColorMaterial(GL_FRONT, GL_AMBIENT_AND_DIFFUSE);//設定顏色追蹤的材料屬性以及多邊形的面
if (pModel)
{
glColor3f(0.3, 0.3, 0.3);
glRotatef(angle, 0.0f, 1.0f, 0.0f);
angle++;
glmDraw(pModel, GLM_FLAT);
}
glutSwapBuffers();
}
uj5u.com熱心網友回復:
搜網路教程“學OpenGL編3D游戲”?uj5u.com熱心網友回復:
旋轉可分為視點改變和模型位姿改變后者位姿改變矩陣是由你自己計算的, glMultMatrixd(M) 可改變矩陣的位姿, 同時用這個矩陣乘以目標點坐標就是變換后的
uj5u.com熱心網友回復:
樓上說的有道理,看你是改變攝像機呢還是改變模型位置呢
轉載請註明出處,本文鏈接:https://www.uj5u.com/gongcheng/73851.html
標籤:圖形處理/算法
上一篇:arcgis中,.cpg是什么?
