首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 移动开发 > 移动开发 >

openGLES学习札记——变换坐标系的函数glLoadIdentity()、glTranslatef()和glRotatef()

2012-07-25 
openGLES学习笔记——变换坐标系的函数glLoadIdentity()、glTranslatef()和glRotatef()?glLoadIdentity()将当

openGLES学习笔记——变换坐标系的函数glLoadIdentity()、glTranslatef()和glRotatef()

?

glLoadIdentity()


将当前的用户坐标系的原点移到了屏幕中心:类似于一个复位操作
1.X坐标轴从左至右,Y坐标轴从下至上,Z坐标轴从里至外。
2.OpenGL屏幕中心的坐标值是X和Y轴上的0.0f点。
3.中心左面的坐标值是负值,右面是正值。
?? 移向屏幕顶端是正值,移向屏幕底端是负值。
?? 移入屏幕深处是负值,移出屏幕则是正值。

?

glTranslatef(x, y, z)

沿着 X, Y 和 Z 轴移动。

注意在glTranslatef(x, y, z)中,当您移动的时候,您并不是相对屏幕中心移动,而是相对与当前所在的屏幕位置。其作用就是将你绘点坐标的原点在当前原点的基础上平移一个(x,y,z)向量。

?

glRotatef(angle, x, y, z)
与glTranslatef(x, y, z)类似,glRotatef(angle, x, y, z)也是对坐标系进行操作。
旋转轴经过原点,方向为(x,y,z),旋转角度为angle,方向满足右手定则。

?

即以向量(x,y,z)为轴旋转angle个角度,那么旋转方向如何判定呢??
用右手法则来判定,对,说的就是电磁场里的右手法则,即将张开右手掌,朝上,大拇指指向向量方向,然后四手指往里握成拳,四手指旋转的方向即旋转方向。注意,如果angle为负值,方向则反。

?

?

热点排行