【发布时间】:2014-07-05 10:28:10
【问题描述】:
我需要使用不同的 openGL 函数执行一些操作。
我有一个初始化为 glList 的多维数据集。我正在做的是用 glu 标准函数进行一些转换,我喜欢用矩阵乘法做完全相同的操作。 但我被旋转功能卡住了。我想围绕 x achsis 旋转立方体,例如90°:
glRotatef(90.0, 1.0f, 0.0f, 0.0f);
应替换为:
GLdouble m[16] ={1.0, 0.0, 0.0, 0.0,
0.0, 0.0, 1.0, 0.0,
0.0,-1.0, 0.0, 0.0,
0.0, 0.0, 0.0, 1.0 };
glMultMatrixd(m);
我找到了this very usefull site ,但它与上面的功能并不完全相同。将glRotatef()函数转化为gl变换矩阵有通用原理吗?
更新:抱歉,我错过了文档开头的重要说明,即文档中的矩阵需要转置以在 openGL 中使用。
【问题讨论】:
-
那么你的问题解决了吗?然后回答或删除此问题。
-
好的,我添加了我的解决方案和示例。如果会有更通用的解决方案或更好的答案,我会接受。
标签: c++ opengl matrix glut glu