opengl中关于平移旋转坐标系问题
来源:互联网 发布:java自学需要什么基础 编辑:程序博客网 时间:2024/05/05 09:39
void test::resizeGL(int width,int height)
{
glViewport(0,0,width,height);
glMatrixMode(GL_PROJECTION);
glLoadIdentity();
glOrtho(-10,10,-10,10,-10,10);
glMatrixMode(GL_MODELVIEW);
}
void test::draw()
{
int depth=-5;
glMatrixMode(GL_MODELVIEW);
glLoadIdentity();
glRotatef(rotateY,0,1,0);
glTranslatef(0,0,depth);
glBegin(GL_LINES);
glVertex3f(-10,0,0);
glVertex3f(10,0,0);
glVertex3f(0,-10,0);
glVertex3f(0,10,0);
glEnd();
}
这个是用vs2012+QTopengl写的两个函数,从中可以看出,我的点的变换是这么个步骤,
这里我原来这么一个误区:
误区一:画在原点-->平移-->旋转,而不是画在想画的点,想画的那个地方是平移过去的。
就是点是画在(x,y,depth)的,其实不是,点是画在原点,然后通过平移,最后旋转的顺序出现的,因为需要将点通过矩阵变换,才能得到最终的二维坐标点,我们所看到的都是二维的图形,即使是三维的图形,其实也是看起来三维,但是投影到屏幕依然是二维图形。
误区二:我们的所说的裁剪图形,是平移旋转之后裁剪的,而不是画出来,裁剪了再平移旋转。
- opengl中关于平移旋转坐标系问题
- opengl中平移、旋转、缩放
- OpenGL中矩阵的平移与旋转的顺序问题
- OpenGL立方体在世界坐标系中_缩放_旋转_平移_顶点片源着色器
- OpenGL立方体在世界坐标系中_缩放_旋转_平移_顶点片源着色器_光照作用
- OpenGL立方体在世界坐标系中_缩放_旋转_平移_顶点片源着色器_光照作用_棋盘纹理贴图
- OpenGL中平移函数glTranslatef()、旋转函数glRotatef()的理解
- OpenGL中的平移旋转缩放
- OpenGL之旋转、平移、缩放
- OpenGL-旋转平移与缩放
- 直角坐标系的平移和旋转
- 直角坐标系的平移和旋转
- 直角坐标系的平移和旋转
- 什么叫做坐标系的平移和旋转.
- 【OpenGL】OpenGL 2D平移与旋转
- 旋转、移动OpenGL视坐标系
- 旋转、移动OpenGL视坐标系
- OpenGL绘图过程中,平移后再次旋转,旋转中心为什么变了?
- 避免using 指示
- Eclipse打JAR包,插件FatJar安装与使用
- python 定时做快照的脚本
- 我的第一篇博客__hello world
- 改变 CListCtrl、CHeaderCtrl 高度、字体、颜色和背景
- opengl中关于平移旋转坐标系问题
- Android文本阅读器,SD卡文本阅读
- LogCat:Unable to open log device ‘/dev/log/main’: No such file or directory
- 6款Java转C#的最佳工具[比较有用]
- 我的 debian 配置笔记
- java 中关于System property 之 file.encoding
- array()
- 定时做快照的python测试脚本
- eclipse,myeclipse,STS等IDE字体设置