美文网首页
4.3 矩阵堆栈

4.3 矩阵堆栈

作者: hie | 来源:发表于2019-01-07 15:37 被阅读0次

1、使用GLMatrixStack 定义,默认深度为64。

GLMatrixStack::GLMatrixStack(int iStackDepth = 64);

2、栈顶添加矩阵

    2.1、单元矩阵

     void GLMatrixStack::LoadIdentity(void);

    2.2、任意矩阵

        //参数:4*4矩阵

      void GLMatrixStack::LoadMatrix(const M3DMatrix44f m);

3、获取当前矩阵(当前矩阵:位于栈顶的矩阵

     const M3DMatrix44f & GLMatrixStack::GetMatrix(void);

      void GLMatrixStack::GetMatrix(M3DMatrix44f mMatrix);

4、矩阵相乘

//矩阵乘以矩阵堆栈顶部矩阵,相乘结果存储到堆栈的顶部,相乘结果会取代堆栈的当前矩阵

void GLMatrixStack::MultMatrix(const M3DMatrix44f);

5、压栈、出栈

 压栈:存储一个状态 

        //将当前矩阵压入堆栈栈顶

            void GLMatrixStack::PushMatrix(void);

        //将M3DMatrix44f 矩阵对象压⼊当前矩阵堆栈栈顶

            void PushMatrix(const M3DMatrix44f mMatrix);

        //将GLFame 对象压⼊入矩阵对象 

            void PushMatrix(GLFame &frame);

出栈: 恢复一个状态

//移除顶部的矩阵对象

void GLMatrixStack::PopMatrix(void);

相关文章

  • 4.3 矩阵堆栈

    1、使用GLMatrixStack 定义,默认深度为64。 GLMatrixStack::GLMatrixStac...

  • 矩阵堆栈

    矩阵堆栈的作用? 矩阵堆栈只是保存变化的状态。 GLMatrixStack::GLMatrixStack(int ...

  • OpenGL学习之路(5.3) 矩阵堆栈的了解和使用方法

    什么是矩阵堆栈? OpenGL的矩阵堆栈指的就是内存中专门用来存放矩阵数据的某块特殊区域。一般说来,矩阵堆栈常用于...

  • OpenGL利用矩阵堆栈绘制图形

    什么是矩阵堆栈 矩阵堆栈指的就是内存中专门用来存放矩阵数据的某块特殊区域。一般说来,矩阵堆栈常用于构造具有继承性的...

  • 矩阵堆栈操作

    顶点变化管线图中,我们需要对模型视图矩阵和投影矩阵进行设置或者变换。 矩阵堆栈 本质还是堆栈,只是存储着矩阵。#i...

  • OpenGL绘制地板

    1:GLMatrixStack (矩阵)堆栈的使用 GLMatrixStack,初始化时已经在堆栈中包含了单位矩阵...

  • OpenGL矩阵堆栈

    OpenGL的矩阵堆栈指的就是内存中专门用来存放矩阵数据的某块特殊区域。一般说来,矩阵堆栈常用于构造具有继承性的模...

  • 视频特效学习04-OpenGL基础变化

    学习目标: 向量、矩阵和基础变化(了解) 使用矩阵/向量移动几何图形(实践) 矩阵堆栈(理解) 1. 向量与矩阵 ...

  • OpenGL 矩阵操作

    矩阵堆栈 //类型GLMatrixStack::GLMatrixStack(int iStackDepth = 6...

  • OpenGL-矩阵

    一、使用矩阵堆栈 //类型GLMatrixStack::GLMatrixStack(int iStackDepth...

网友评论

      本文标题:4.3 矩阵堆栈

      本文链接:https://www.haomeiwen.com/subject/utyehqtx.html