- 5
- 0
- 约4.17千字
- 约 44页
- 2017-04-08 发布于湖北
- 举报
05OpenglPrograming-4CG综述
OPENGL编程基础-4
主讲人:张慧杰
Email: zhanghj167@nenu.edu.cn
本章内容
模型变换
视点变换
投影变换
视口变换
操纵矩阵堆栈
OpenGL中的变换负责完成图形绘制管线的几何阶段。
各种变换概述
相机类比
各种变换概述
各种变换的效果都是以矩阵的形式存储的
两个矩阵相关的函数
glMatrixMode(…);
glLoadIdentity(…);
设置矩阵模式
void glMatrixMode(GLenum mode);
功能:
设置当前矩阵模式
参数:
mode:设置矩阵模式
返回值:无
备注:
mode可取以下值:
GL_MODELVIEW //设置当前矩阵为模型视点矩阵
GL_PROJECTION //设置当前矩阵为投影矩阵
GL_TEXTURE //设置当前矩阵为纹理矩阵
单位化矩阵
void glLoadIdentity(void)
功能:
单位化当前矩阵
参数:无
返回值:无
备注:
一般用作清除所有变换的效果
内容进度
模型变换
视点变换
投影变换
视口变换
操纵矩阵堆栈
模型变换
相当于设置模型的位置和方向
有三个可以进行模型变换的函数
glTranslatef //平移
glRotatef //旋转
glScalef //缩放
进行模型变换前,需要将当前矩阵设置为模型视点矩阵
即,glMatrixMode(GL_MODELVIEW);
平移
物体位置的变化
平移
void glTranslatef(GLfloat x, GLfloat y, GLfloat z)
功能:
场景平移
参数:
x: X轴方向平移的距离
y: Y轴方向平移的距离
z: Z轴方向平移的距离
返回值:无
备注:无
旋转
物体姿态的变化
旋转
void glRotatef(GLfloat angle, GLfloat x, GLfloat y, GLfloat z)
功能:
场景旋转
参数:
angle: 旋转的角度
x,y,z: 用于指定旋转轴
返回值:无
备注:
绕原点(0,0,0)到(x,y,z)的直线逆时针旋转angle个角度
缩放
物体大小的变化
缩放
void glScalef(GLfloat x, GLfloat y, GLfloat z)
功能:
场景缩放
参数:
x: X轴方向的缩放因子
y: Y轴方向的缩放因子
z: Z轴方向的缩放因子
返回值:无
备注:无
模型变换顺序
注意:应该以相反的顺序指定变换矩阵
glTranslatef(…);
glRotatef(…);
glBegin(…);
…… ……
glRotatef(…);
glTranslatef(…);
glBegin(…);
…… ……
练习
简单行星模拟(Planet)
内容进度
模型变换
视点变换
投影变换
视口变换
操纵矩阵堆栈
视点变换
相当于改变相机位置和方向
进行视点变换的函数
gluLookAt(…);
进行视点变换前,需要将当前矩阵设置为模型视点矩阵
即,glMatrixMode(GL_MODELVIEW);
视点变换函数
gluLookAt( GLdouble eyex, GLdouble eyey,
GLdouble eyez, GLdouble centerx, GLdouble centery, GLdouble centerz, GLdouble upx, GLdouble upy, GLdouble upz);
功能:
设置相机位置和方向
参数
eyex, eyey, eyez:相机(视点)的位置
centerx, centery, centerz:相机的朝向
upx, upy, upz:相机向上的向量(控制相机姿态)
视点变换函数
返回值:无
备注:
若将upy传入负值,则
会得到颠倒的图像
修改upz的值,通常不会影响到显示效果
内容进度
模型变换
视点变换
投影变换
视口变换
操纵矩阵堆栈
投影变换
相当于设置相机镜头,可以指定视景体
视景体:拍照时相机镜头可见的部分
两种投影方式
平行投影(正交投影,物体离相机的远近不会影响物体的大小)
透视投影(近大远小)
设置视景体的函数
glOrtho(…) //平行投影
gluOrtho2D(…) //平行投影
glFrustum(…) //透视投影
gluPerspective(…) //透视投影
进行投影变换前,需要将当前矩阵设置为投影矩阵
即,glMatrixMode(GL_PROJECTION);
平行投影函数
void glOrtho(GLdouble left, GLdouble right, GLdouble bottom, GLdouble top,
GLdouble near,
您可能关注的文档
- 05-13二建法规真题综述.doc
- 二极管元器件讲述.ppt
- 二季度储装运现场考核工作汇报讲述.doc
- 05-1_脂类概论_脂代谢综述.ppt
- 福建农林大学—2011年机械设计试题及答案讲述.doc
- 电动力学_郭硕鸿_第三版_第10次课(2.3拉普拉斯方程_分离变量法)讲述.ppt
- 电动力学二三(分离变量法)讲述.ppt
- 05-14国考—图形推理专项真题系列综述.doc
- 福建省2016届高考适应性物理试卷(解析版)[来源:学优高考网402432]讲述.doc
- 福建省财政教育支出分析讲述.doc
- (2026春新版)部编版八年级语文下册《第一单元》PPT课件.pptx
- 2018电力监控系统网络安全监测装置技术规范.docx
- 2022电力监控系统安全防护方案审核要点.docx
- 2014电力电缆光伏系统EN 50618欧标.docx
- (2026春新版)人教版二年级数学下册《第三单元 万以内数的认识》教案.docx
- (2026春新版)人教版二年级数学下册《第四单元 万以内的加法和减法》教案.docx
- (2026春新版)人教版二年级数学下册《综合与实践 时间在哪里》教案.docx
- (2026春新版)苏教版二年级数学下册《综合与实践 时间有多长》教案 .pdf
- (2026春新版)部编版三年级语文下册第3单元(教案).docx
- (2026春新版)部编版三年级语文下册第8单元(教案).docx
最近下载
- 医院体检报告改用简单.pdf VIP
- 人工气道气囊的管理专家共识(2024完整版).pptx VIP
- 2026年部编版新教材道德与法治小学三年级下册全册教案(含教学计划).docx
- 外研版(2025)高中英语必修选择性第一册单词表(全) .pdf VIP
- 上海新国际博览中心有限公司.PDF VIP
- 2026元旦主题班会:马年猜猜乐,猜成语 (共130题) 课件(共134张PPT).pptx VIP
- 锚定新坐标,聚力新征程——学校2026年工作思路(6大板块+28项核心举措).doc VIP
- 《爷爷的爷爷从哪里来》整本书阅读课件四年级下册语文(统编版).pptx VIP
- 山东省东营市广饶县2024-2025学年八年级(五四学制)下学期期末考试化学试卷(含答案).docx VIP
- 2025年事业单位招聘考试财会类综合知识试卷.docx VIP
原创力文档

文档评论(0)