关于OGL旋转函数glRotate参数的理解
2013-12-27 21:44
351 查看
glRotatef函数的API中文参考文档请看:OpenGL
ES之glRotate函数
void glRotatef(GLfloat angle, GLfloat x, GLfloat y, GLfloat z);
其中,angle为旋转的角度,单位为度.重点是x,y,z表达的是什么意思呢?应该如何取值?
如果说x,y,z表达的是一个坐标(x,y,z),那么这个函数就说明了当前几何图形围着这个坐标点旋转,但往哪个方向旋转呢?所以很明显,x,y,z表达的意思并不是坐标点,而是要围绕哪个坐标轴旋转.即其实这里的x,y,z值相当于一个布尔值,0.0表示假,而非零参数则表示真。所以如果你想让当前的几何图形围绕着z轴旋转,那么x和y都设为0,而z设为非零值即可。如果这里的x,y,z的值都设置为0.0,那么将围绕着x轴旋转。还有一点需要注意,如果设置的旋转值(x,y,z的值)为正数,那么旋转的方向是逆时针的,如果旋转值是负数,那么旋转的方向是顺时针的。
OpenGL ES是基于浮点运算的,iPhone有专门的浮点运算器,所以,要习惯OpenGL ES中使用浮点数的表达方式。
ES之glRotate函数
void glRotatef(GLfloat angle, GLfloat x, GLfloat y, GLfloat z);
其中,angle为旋转的角度,单位为度.重点是x,y,z表达的是什么意思呢?应该如何取值?
如果说x,y,z表达的是一个坐标(x,y,z),那么这个函数就说明了当前几何图形围着这个坐标点旋转,但往哪个方向旋转呢?所以很明显,x,y,z表达的意思并不是坐标点,而是要围绕哪个坐标轴旋转.即其实这里的x,y,z值相当于一个布尔值,0.0表示假,而非零参数则表示真。所以如果你想让当前的几何图形围绕着z轴旋转,那么x和y都设为0,而z设为非零值即可。如果这里的x,y,z的值都设置为0.0,那么将围绕着x轴旋转。还有一点需要注意,如果设置的旋转值(x,y,z的值)为正数,那么旋转的方向是逆时针的,如果旋转值是负数,那么旋转的方向是顺时针的。
OpenGL ES是基于浮点运算的,iPhone有专门的浮点运算器,所以,要习惯OpenGL ES中使用浮点数的表达方式。
相关文章推荐
- 关于对于C语言中主函数参数接返回值的理解
- 关于js深入理解:json作为函数参数 类似于jQuery的post函数,具有url,data ,和回调函数
- 关于js 函数传递引用参数理解
- 关于ECMAScript函数参数的多方面理解
- 关于opencv直方图计算函数 calcHist()的channels参数的理解
- 关于js中函数参数“按值传递”的理解
- c里面关于变参数函数的理解
- python-关于函数间参数传递问题(注意理解,很容易混淆)
- 关于指针作为函数参数传递的理解,对比普通变量作为函数参数的需注意点,其实就是行参和实参的问题。
- python中函数的参数理解
- 关于inline函数,可以作为函数参数传递的思考
- 关于CONVERT(varchar(10),date,111)函数最后一个参数说明
- js中函数的参数理解
- 【误区】关于Linux C 网络编程函数accept第三个参数
- C#中有关于:按 值 和 引用 传递参数 的理解
- 关于静态变量和函数粗浅理解(很粗,很浅)
- 今天学习了关于C++ 中可变参数个数函数的使用!
- 黑马程序员---------C语言 关于数组被当作函数参数传递的问题
- 关于函数中要传递不确定性参数的方法:*args、**kwargs
- 关于可变参数的函数