折叠 编辑本段 概述
在计算机程序设计中,漫游是利用OpenGL与编程语言(VC++)进行系统开发时实现的极其重号要的功能之一,是一种对三维虚拟场景的浏览操作方式。
折叠 编辑本段 漫游方式
1.手动漫游方式:u=516104732,6359788&fm=23&gp=0.jpg
即通过键盘操作对虚拟场景进行浏览,键讨些束放手杂植盘命令包括:左转、右转、前进、后腿、上升、下降、仰视、俯视等。实现过程中需要的主要函数如下:
(1)平移变换函数:
void glTranslate (TYPE x,TYP来自E y,TYPE z)360百科,三个函数参数就是目标分别沿三个轴向平移的偏移量。这个函数表示用这三个偏移量生成的矩阵乘以当前矩阵。当参数是((福促航客宽0.0,0.0,0.0)时,表示对函数glTranslate*0的操作是单位矩阵,也就是对物体没有影响。
(2)旋转变换函数:
void glRotate (TYPE angle,TYPE x,TYPE y,TYPE z),函数中第一个参数是表示目标沿从点((x,y,z)到原点的方向逆时针旋转的角度,后三个参数是旋转的方向点坐标。这个函数表示用这四个参数生成的矩阵乘以当前矩阵。当角度参数是0.0时,表示对物体没有影响。
(3)缩放和反射变换函数:
void glScale (TYP含超比巴理挥酸从夫字望E x,TYPE y,TYP乱体席乙议E z),三个函数参数值就是目标分别沿三个轴向缩放的比例因子。这个函数表示用这三个比例因子生成的矩阵乘以当前矩阵。这个函数能完成沿相应的轴对目标进行拉伸、压缩和反射三项功能。当参数是(1.0, 1.0, 1.0)时,表示对函数glScale 题丰推证牛得溶管* U操作是单位矩阵,也就是对物体没有影响。当其很运南渐中某个参数为负值时,表示将对目标进行相应轴的反射变换,目标这个参数小于1.0,则还王要进行相应轴的缩放变换。略般送神呀川沉曾升最好小到令三个参数值都为零,这将导致目标沿三轴都缩为零。
(4)透视投影变换函数:
void gl同背着Frustum(GLdouble left,GLdouble right,GLdouble bottom,GLdouble top,GLdouble near,GLdouble far),left,right:这两个参数指定所定义的视景体的左、右垂直裁剪。Bottom,top:这两个参数指定所定义的视景体的下、上水平着声裁剪面。 Near,far:定义了视景体的近、远裁剪面和视点的距离。[1]