OpenGL图像平移、旋转基本操作总结

           在OpenGL里面使用glTranslatef()、glRotatef()等函数可以图形的平移、旋转等。


1、在变换的时候都是对绘图坐标系进行的变换,所以在此坐标系中画的图都会被变换;如果要画两个图,但只想对第一个图进行变换,第二个图不变换或者进行不同的变换,这个时候就需要注意一点:在前一个图使用变换矩阵的时候加上:

glPushMatrix();
glTranslatef();

//绘图代码.........

glPopMatrix();

只有这样,第二个图才不会受到前一个变换的影响。


          2、复合变换

比如,用OpenGL画一个图,我想让他先饶Z旋转,然后沿X轴平移。这个时候就需要注意变换矩阵的顺序:

//先调用平移矩阵,然后调用旋转矩阵,与我们
//要看到的实际效果相反
glTranslatef(m_Rimage_Xoff,0.0f,0.0f);
 glRotatef(30.0f,0.0f,0.0f,1.0f);


  • 0
    点赞
  • 16
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值