0
点赞
收藏
分享

微信扫一扫

《高效学习OpenGL》之 openGL变换

1.视点变换

函数gluLookAt()

2.模型变换

旋转: glRotatef(angle, rx, ry, rz)



平移: glTranslate(tx,ty,tz)



缩放:glScalef(kx,ky,kz)



数学含义



2.1 旋转变换glRotatef(θ,x,y,z)



函数中第一个参数angle是表示目标沿从点(x, y, z)到原点的方向逆时针旋转的角度,后三个参数是旋转的方向点坐标。这个函数表示用这四个参数生成的矩阵乘以当前矩阵。



旋转矩阵形式如下:向量(x,y,z)单位化(nx,ny,nz)



2.2 缩放:glScalef(kx,ky,kz)


三个函数参数值就是目标分别沿三个轴向缩放的比例因子。这个函数表示用这三个比例因子生成的矩阵乘以当前矩阵。这个函数能完成沿相应的轴对目标进行拉伸、压缩和反射三项功能。 公式:



2.3 平移: glTranslate(△x, △y, △z)



三个函数参数就是目标分别沿三个轴向平移的偏移量。这个函数表示用这三个偏移量生成的矩阵(齐次矩阵)乘以当前矩阵。坐标用齐次坐标表示。



3.投影变换

3.1透视投影

glFrustum()和glPerspective()

3.2正射投影

gluOrtho()和gluOrtho2D()

4视口变换

glViewport()



举报

相关推荐

0 条评论