首页 > 其他 > 详细

OpenGL中坐标系的理解(一)

时间:2016-12-29 07:42:59      阅读:224      评论:0      收藏:0      [点我收藏+]

在OpenGL中,存在着至少存在着三种矩阵,对应着函数glMatrixMode()的三个参数:GL_MODELVIEW,GL_PROJECTION,GL_TEXTURE。

以下主要描述GL_MODELVIEW(模型视图矩阵)的个人理解。

在OpenGL中空间中点的三维坐标是使用行向量表示的,虽然与列向量相比存储结构并没有发生变化,但在坐标变换(即矩阵乘法)中会有很大不同。大家都知道一个4X4的矩阵可以表示三维坐标的平移,旋转变换。例如一矩阵R表示一个旋转加平移变换,空间中一点P(x, y, z),如果坐标使用列向量表示,则变换过程为

技术分享

如果坐标使用行向量表示,则变换过程为上述矩阵的转置

技术分享

因此,OpenGL中变换矩阵采用的是右乘的方式,并且其需要的变换矩阵其实是真正变换矩阵的转置(前提是矩阵在数组中采取的是以行为主的形式,即先存储完矩阵的一行,接下来再存储矩阵的下一行)。

函数glLoadMatrixf(const GLfloat *m)输入的矩阵其实是变换矩阵R的转置RT

 

 

 

 

 

 

 

OpenGL中坐标系的理解(一)

原文:http://www.cnblogs.com/pursuiting/p/6231136.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!