OpenGL 物体坐标旋转
我建立了一个飞机模型,并且希望在输入其绕三个轴旋转的时候的角度使它旋转。但是问题在于,所有的输入变量都没有问题,旋转也正常进行。但是当运行glRotatef(planer...
我建立了一个飞机模型,并且希望在输入其绕三个轴旋转的时候的角度使它旋转。
但是问题在于,所有的输入变量都没有问题,旋转也正常进行。但是当运行
glRotatef(planerotation[0],1,0,0);
glRotatef(planerotation[1],0,1,0);
glRotatef(planerotation[2],0,0,1);
的时候,我希望每个角度都是针对物体坐标轴进行旋转的。
但是程序运行的时候,只有Z轴旋转是按照物体坐标轴旋转的,X轴虽然旋转中心是在物体中心位置,但是其旋转轴和世界矩阵是平行的,并不会随着物体的旋转而旋转。而Y轴则是根据物体的Z轴旋转得到的新的Y轴旋转,也不是按照物体坐标轴来转。
请问有没有什么方法在OpenGL下面得到一个根据物体坐标系来旋转物体的方式呢?谢谢 展开
但是问题在于,所有的输入变量都没有问题,旋转也正常进行。但是当运行
glRotatef(planerotation[0],1,0,0);
glRotatef(planerotation[1],0,1,0);
glRotatef(planerotation[2],0,0,1);
的时候,我希望每个角度都是针对物体坐标轴进行旋转的。
但是程序运行的时候,只有Z轴旋转是按照物体坐标轴旋转的,X轴虽然旋转中心是在物体中心位置,但是其旋转轴和世界矩阵是平行的,并不会随着物体的旋转而旋转。而Y轴则是根据物体的Z轴旋转得到的新的Y轴旋转,也不是按照物体坐标轴来转。
请问有没有什么方法在OpenGL下面得到一个根据物体坐标系来旋转物体的方式呢?谢谢 展开
2013-05-27 · 知道合伙人互联网行家
关注
展开全部
用glPushMatrix和glPopMatrix保存和恢复你希望的变换状态
更多追问追答
追问
追答
沿着三个轴的变换要用一个矩阵,这个自己算,然后用glMulMatrix 一次性将变换应用到当前绘制,否则你将碰到下面这个问题
http://en.wikipedia.org/wiki/Gimbal_lock
你可以看一下四元数和欧拉角的有关资料
东莞市易合传动科技有限公司
2022-11-01 广告
2022-11-01 广告
使用中空旋转平台注意事项:一、防止将中空旋转平台衔接至负载侧。二、小心搬运中空旋转平台的边际以及键侧。三、防止运用敲击中空旋转平台和跌落损坏中空旋转平台减速机。四、在运用巴普曼中空旋转平台时要尽量避免双手和其它物体接触其转动轴。五、拼装轮滑...
点击进入详情页
本回答由东莞市易合传动科技有限公司提供
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询