OpenGL投影变换函数gluOrtho2D()和视口变换函数glViewport()

OpenGL投影变换函数gluOrtho2D()和视口变换函数glViewport() 
  

1. void glOrtho(GLdouble left,GLdouble right,GLdouble bottom,GLdouble top,
      GLdouble near,GLdouble far)
正射投影,又叫平行投影。正射投影的最大一个特点是无论物体距离相机多远,投影后的物体大小尺寸不变。其中近裁剪平面是一个矩形,矩形左下角点三维空间坐标是(left,bottom,-near),右上角点是(right,top,-near);远裁剪平面也是一个矩形,左下角点空间坐标是(left,bottom,-far),右上角点是(right,top,-far)。

这个函数是定义剪裁面,何谓剪裁面,我这样理解,我们是在一个无限的空间里绘图,因为坐标是 可以随便指定的,随便在哪个坐标绘图,但是我们可以通过定一个剪裁面,也就是说,有一架照相机,尽管沿途风景很多,但是镜头只能拍到一定的范围,这个范围就是我们的剪裁面,我们能显示的就是这个剪裁面。

2. procedure glViewPort(x:GLInt;y:GLInt;Width:GLSizei;Height:GLSizei);
其中,参数X,Y指定了视见区域的左下角在窗口中的位置,一般情况下为(0,0),Width和Height指定了视见区域的宽度和高度。

这个函数跟上面的相似,但是我们发现上面的指定一个剪裁面后,是在我们定义的窗口的整个窗口中显示我们剪裁出来的面,而这个函数就是为了在一部分中显我们要显示的剪裁面,即,我们先取景(就是用gluOrtho2D()剪出来那个),然后在我们定义的窗口中选一个区域来显示这个取好的


你可能感兴趣的:(OpenGL投影变换函数gluOrtho2D()和视口变换函数glViewport())