如何在OpenGL中使一条线段先绕X轴旋转一个角度然后在此基础上绕Z轴旋转一个角度?例如:直线(0,0,1),先绕X轴旋转30°,然后再绕Z轴旋转45°.我的代码:glLoadIdentity(); glClearColor3f(1.0f,1.0f,1.0f,0.0f

来源:学生作业帮助网 编辑:作业帮 时间:2024/12/03 04:35:01
如何在OpenGL中使一条线段先绕X轴旋转一个角度然后在此基础上绕Z轴旋转一个角度?例如:直线(0,0,1),先绕X轴旋转30°,然后再绕Z轴旋转45°.我的代码:glLoadIdentity(); glClearColor3f(1.0f,1.0f,1.0f,0.0f
xTAOA+=b2$Xb&mӘhX YrPO(J-RkQDhAZ#ZY$_۝Ս֤^L >F+((=Z =hf= k-0n0rX;f_?iPL[n 7 ,gR#?/>˰ܝG^*oUܭehNBᩰ(%璋Gh0*X4^,r?< ?]&7;NO'u!i>J+;8lˆ"1R$*8s~?:?⟈9åNO=|y;p ˞:b").pA@Zyʳ0ҐhC2{Xq7/d?vK5Z:(:K1(iȓ-\gkgd~h1U E)m8 N8I;Cp{ށ~M'z4w XNWq*#Eߙ ƅ,\:/>}4W3E_Qa~si R^ {GDp(Zb@$RhXv;ꀃVLS ZiՉNe Ev^493dXCҘ%/޳

如何在OpenGL中使一条线段先绕X轴旋转一个角度然后在此基础上绕Z轴旋转一个角度?例如:直线(0,0,1),先绕X轴旋转30°,然后再绕Z轴旋转45°.我的代码:glLoadIdentity(); glClearColor3f(1.0f,1.0f,1.0f,0.0f
如何在OpenGL中使一条线段先绕X轴旋转一个角度然后在此基础上绕Z轴旋转一个角度?
例如:直线(0,0,1),先绕X轴旋转30°,然后再绕Z轴旋转45°.
我的代码:
glLoadIdentity();
glClearColor3f(1.0f,1.0f,1.0f,0.0f);
glTranslatef(-5.0f,-3.0f,-15.0f);
glRotatef(AngleC,0.0f,0.0f,1.0f); //绕Z轴
glRotatef(AngleA,1.0f,0.0f,0.0f); //绕X轴
glBegin(OpenGL.LINES);
glColor3f(0.0f,0.0f,1.0f); //蓝色
glVertex3f(x1,y1,z1);
glVertex(x2,y2,z2);
glEnd();
这样写为什么只绕X轴转动而没有绕Z轴转动呢?或者说它有可能是先绕Z轴转动的但是因为直线在Z轴上所以没有看出来?但是我将两个glRotatef()顺序调换了以后还是一样,请问为什么啊,我想让它线绕X轴转动,再绕Z轴转动,

如何在OpenGL中使一条线段先绕X轴旋转一个角度然后在此基础上绕Z轴旋转一个角度?例如:直线(0,0,1),先绕X轴旋转30°,然后再绕Z轴旋转45°.我的代码:glLoadIdentity(); glClearColor3f(1.0f,1.0f,1.0f,0.0f
如果是先绕X在绕Z那么上面的代码旋转顺序是对的.只有一部分代码,不能确定为啥不转,要是其他部分正确的话应该是可以正常工作的.
只是直线的位置是不是不容易看出旋转的效果.