D12.1.0 如何在MFC中使用OpenGL实现图形旋转,缩放和移动?

01函数解释

void glTranslatef(GLfloat x,GLfloat y,GLfloat z);

函数功能:沿X轴正方向平移x个单位(x是有符号数),沿Y轴正方向平移y个单位(y是有符号数),沿Z轴正方向平移z个单位(z是有符号数)。

void glRotatef(GLfloat angle,GLfloat x,GLfloat y,GLfloat z);

先解释一下旋转方向,做(0,0,0)到(x,y,z)的向量,用右手握住这条向量,大拇指指向向量的正方向,四指环绕的方向就是旋转的方向。

函数功能:以点(0,0,0)到点(x,y,z)为轴,旋转angle角度;

void glScalef(GLfloat x, GLfloat y, GLfloat z);

函数功能:参数x,y,z分别为模型在x,y,z轴方向的缩放比。

原文链接: https://blog.youkuaiyun.com/tan_handsome/article/details/50614146

02具体步骤

步骤如下:

1、设置当前绘图句柄。

2、设置绘图模型

3、进行缩放,移动,旋转等操作

这些操作需要在绘图之前完成。因为glTranslatef(),glScalef(),glRotatef()等此类几何变换接口的作用是对当前模型空间进行几何变换,在glBegin()和glEnd()之间是无效的。因此,对模型的位置进行转换,要在glBegin()和glEnd()接口之前进行处理。

4、画图


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值