`
huozheleisi
  • 浏览: 1236739 次
文章分类
社区版块
存档分类
最新评论

glMatrixMode()函数和glLoadIdentity()函数

阅读更多

glMatrixMode():指定哪一个矩阵是当前矩阵

C语言描述

void glMatrixMode(GLenum mode)

参数

mode指定哪一个矩阵堆栈是下一个矩阵操作的目标,可选值:GL_MODELVIEW、GL_PROJECTION、GL_TEXTURE.

说明

glMatrixMode设置当前矩阵模式:

GL_MODEVIEW,对模型视景矩阵堆栈应用随后的矩阵操作。

GL_PROJECTION,对投影矩阵应用随后的矩阵操作。

GLTEXTURE,对纹理矩阵堆栈应用随后的矩阵操作。

glLoadIdentity():该函数的功能是重置当前指定的矩阵为单位矩阵。

在glLoadIdentity()之后我们为场景设置了透视图。glMatrixMode(GL_MODELVIEW)设置当前矩阵为模型视图矩阵,模弄视图矩阵储存了有关物体的信。

分享到:
评论

相关推荐

    计算机图形学实验23

    一、实习的目的和意义 通过编程实现直线、圆、椭圆生成,以掌握基本图形的生成原理和算法;实现不同的线宽和线型;... glMatrixMode(GL_PROJECTION); glLoadIdentity(); gluOrtho2D(0.0, 200.0, 0.0, 150

    OopenGL习题讲解

    /* 定义GLUT的reshape函数,w、h分别是输出图形的窗口的宽和高*/ void reshape (int w, int h) { glViewport (0, 0, (GLsizei) w, (GLsizei) h); glMatrixMode (GL_PROJECTION); glLoadIdentity ( ); if (w ) ...

    OpenGL 库函数汇总(中文分类)CHM

    glMatrixMode glPushMatrix , glPopMatrix glPushAttrib , glPopAttrib glPushName , glPopName glInitName glLoadName 1.GL 函数库(续) =============================== 显示列表 -------------------------...

    Camera-Movement:现在,我们在添加Camera并使用gluLookAt函数并添加一些照相机变换之前添加视图转换,直到达到类似这样的效果

    SBE306B-作业3-摄像机移动 ... glMatrixMode (GL_PROJECTION); gluPerspective ( 65.0 , (GLfloat)1024 / (GLfloat)869, 1.0, 60.0); 并在显示函数的gluLookAt添加gluLookAt函数 全局变量 double eye[] = { 0

    opengl画旋转多边形

    glLoadIdentity(); //矩阵堆栈清空 gluOrtho2D(-1.5*R*w/h,1.5*R*w/h,-1.5*R,1.5*R); //设置裁剪窗口大小 glViewport(0,0,w,h); //设置视区大小 glMatrixMode(GL_MODELVIEW); //模型矩阵模式 }

    用opengl绘制一个旋转正方体.cpp

    //这个函数其实就是对接下来要做什么进行一下声明 GL_MODELVIEW 模型视图 glLoadIdentity(); glPushMatrix();// 提供了相应的接口 { glRotatef(AngleX, 1.0f, 0.0f, 0.0f); glRotatef(AngleY, 0.0f, 1.0f, ...

    华南理工大学计算机图形学实验

    glLoadIdentity(); gluOrtho2D(0.0, 50.0,0.0,50.0); glMatrixMode(GL_MODELVIEW); } void display() { GLfloat vertices[3][3] = {{0.0,0.0,0.0}, {25.0, 50.0,0.0}, {50.0,0.0,0.0}}; // an arbitrary triangle ...

    基于粒子系统的火焰

    glLoadIdentity(); // Calculate The Aspect Ratio Of The Window gluPerspective(45.0f,1.3333f,0.1f,1000.0f); glMatrixMode(GL_MODELVIEW); // Set The Blending Function For Translucency ...

    OpenGl实验报告.doc

    实验目的与要求 1、学习和掌握OpenGL的使用 2、掌握矩阵堆栈的实现方法 3、根据自己的创意实现实验内容,进一步掌握和理解OpenGL的使用 2. 实验内容 1、请编写地球围绕太阳自动旋转的方式 2、请再加上一个月亮, 并...

    opengl 期末复习资料

    如何使用OpenGL函数来实现?要求在照相机改变时,该程序应该仍然有效。 7、 如何实现纹理的反走样?说明其原理。 8、 写出场景的反走样算法,并说明其原理。 9、 如何实现采用立方体映射实现的环境映射,写出立方体...

    Lab1:CPE 476 的 Lab1

    托马斯·斯坦克和乔纳森·佩CPE 476 - 实验 1调试!几何基元GL Primitive 结构对于调试非常有用,尤其是当您需要可视化边界框、重要对象形状等时。但界面与渲染管道的其余部分完全不同(而且效率低下)。 这是您的...

    opengl 帮助文档

    The current matrix (see glMatrixMode) is multiplied by this scale matrix, and the product replaces the current matrix as if glScale were called with the following matrix as its argument: ( x 0 0 0 ...

    计算机图形学制作时钟源代码

    glMatrixMode(GL_PROJECTION); glLoadIdentity(); gluPerspective(40.0,aspect,5.0,1000.0); } void CMFCFrame1View::OnDraw(CDC* pDC) { CMFCFrame1Doc* pDoc = GetDocument(); ASSERT_VALID(pDoc); // ...

    图形学立方体旋转程序

    glMatrixMode(GL_PROJECTION); glLoadIdentity(); if (w ) glOrtho(-2.0, 2.0, -2.0 * (GLfloat) h / (GLfloat) w, 2.0 * (GLfloat) h / (GLfloat) w, -10.0, 10.0); else glOrtho(-2.0 * (GLfloat) w / ...

    opengl的太阳系模型

    //对齐像素字节函数 glGenTextures(1,texName); //第一个参数指定表明获取多少个连续的纹理标识符 glBindTexture(GL_TEXTURE_2D , *texName); glTexParameterf(GL_TEXTURE_2D, GL_TEXTURE_WRAP_S, GL_REPEAT); ...

    opengl画图程序附带源代码

    glMatrixMode(GL_PROJECTION); // Select The Projection Matrix glLoadIdentity(); // Reset The Projection Matrix // Calculate The Aspect Ratio Of The Window gluPerspective(45.0f,(GLfloat)width/(GLfloat)...

    opengl橡皮筋

    glMatrixMode(GL_PROJECTION); glLoadIdentity(); if (w ) glOrtho(-3.5, 3.5, -3.5*(GLfloat)h / (GLfloat)w, 3.5*(GLfloat)h / (GLfloat)w, -3.5, 3.5); else glOrtho(-3.5*(GLfloat)w / (GLfloat)h, 3.5*...

    Bresenham画线算法

    glMatrixMode(GL_PROJECTION); glLoadIdentity(); gluOrtho2D(0.0,499.0,0.0,499.0); } void main(int argc,char **argv) { /* standard GLUT initialization */ glutInit(&argc, argv); ...

    Android自制3D View显示组件源代码(3D Widget)

    部分源代码: ... gl.glMatrixMode(GL10.GL_MODELVIEW); gl.glLoadIdentity(); gl.glTranslatef(0, 0, -3.0f); gl.glRotatef(mAngle, 0, 1, 0); gl.glRotatef(mAngle*0.25f, 1, 0, 0); gl.

    OpenGL通过中点法绘制直线和圆

    本文实例为大家分享了OpenGL绘制直线和圆的具体代码,供大家参考,具体内容如下 #include #include <math.h> static int i=1; void Initial(void) { glClearColor(1.0f, 1.0f, 1.0f, 1.0f); //设置窗口...

Global site tag (gtag.js) - Google Analytics