- 1、本文档共50页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第九章 OpenGL环境下图形系统的设计 计算机图形技术 知识PPT.pptx
;;;;;;;;; 1.直线的绘制
我们知道,两个点可以确定一条直线,下面的代码在两个点(0,0,0)和(50,50,50)之间画一根直线。
glBegin(GL_LINES);
glVertex3f(0.0,0.0,0.0)
glVertex3f(50.0,50.0,50.0)
glEND();
注意:在OpenGL中,参数GL_LINES对每两个指定的顶点画一根直线。如果GL_LINES指定奇数个顶点,那么最后一个顶点将会被忽略。
2.折线和封闭折线的绘制
用以下的指令可以绘制折线和封闭折线。在指定GL_LINES_STRIP时,可从一个顶点到另一个顶点用连续的线段画线。例如,在xy平面上画两条由三个顶点指定的线,如图9.4所示:
;; OpenGL本身没有附带字体的支持,而OpenGL体系结构评审委员会也很少涉及这方面的讨论。OpenGL参考协议(OpenGL Specification)也没有关于字体的讨论信息。但字体是必不可少的,在OpenGL中可以使用其他方法来渲染字体,这里有两种方法:位图、画轮廓(多边形)。每种方法有其自己的优点与缺点。
对于处理场景中独立旋转及缩放的标题而言,选择位图字体是比较理想的。从本质上来说,它是预先光栅化的,所以渲染速度比较快,使用它们对提高程序执行速度是显而易见的。
轮廓字体主要用于描述带控制点及曲线集合的字符特征。具体操作与OpenGL处理多边形是一致的。
;; 矩阵操纵函数如下:
1.void glLoadIdentity(void)
功能:设置当前操作矩阵为单位矩阵(当前矩阵即为以后图形变换所要使用的
矩阵)。
2.void glLoadMatrix{fd}(const TYPE *m)
功能:设置任意的矩阵为当前的操作矩阵。
参数说明:
m是一个单精度或双精度浮点数指针,指向一个按列存储的4×4矩阵。
3.void glMultMatrix{fd}(const TYPE *m)
? 功能:用当前矩阵乘以这个函数所提供的矩阵,并且把结果置为当前矩阵。
参数说明:
m是一个单精度或双精度浮点数指针,指向一个按列存储的4×4矩阵。
? 4.void glPushMatrix()
功能:将当前矩阵压入矩阵堆栈。?
5.void glPopMatrix()?
功能:将当前矩阵弹出矩阵堆栈。
运用以上的函数,如果有特殊的需要,用户就可以定义自己的变换。; 1.平移变换
平移变换函数如下:
void glTranslate{fd}(TYPE x,TYPE y,TYPE z)
三个函数???数x、y和z就是几何物体分别沿三个轴向平移的偏移量。这个函数表示
用这三个偏移量生成的矩阵乘以当前矩阵。当参数是(0.0,0.0,0.0)时,表示对函数
glTranslate*()的操作是单位矩阵,也就是对物体没有影响。
2.旋转变换
旋转变换函数如下:
void glRotate{fd}(TYPE angle,TYPE x,TYPE y,TYPE z)
该命令用四个参数所构成的矩阵R乘以当前矩阵。如果参数angle为零,该命
令不作 用。
3.比例变换
比例变换函数如下:
void glScale{fd}(TYPE x,TYPE y,TYPE z)
参数表示变换对象分别沿三个坐标轴缩放的比例因子。该命令把三个比例因子形
成的矩阵S乘以当前矩阵。变换对象中的每个点的在x、y和z轴上的坐标都要乘上
相应的参数x、y、z。;;;; ① GL-2D只返回顶点的几何坐标(x,y)
② GL-3D只返回顶点的几何坐标(x,y,z)。
③ GL-3D-COLOR返回顶点的几何坐标(x,y,z)及顶点的颜色。若颜色为RGBA模式,则颜色分量的个数为4,这样该组数据的个数为7。
④ GL-3D-COLOR-TEXTURE返回顶点的几何坐标(x,y,z)、顶点的颜色与纹理值。纹理由4个量组成。这样在RGBA模式下,该组数据的个数为11个。
⑤ GL-4D-COLOR-TEXTURE返回顶点的被剪切后的几何坐标(x,y,z,w)、顶点的颜色和纹理值。这样在RGBA模式下,该组数据的个数为12个。
(2) 将glRenderMode()函数的参数设为GL-FEEDBACK,使OpenGL进入反馈模式。
(3) 重新绘制物体,并按要求插入
文档评论(0)