图形学第二章.PPT

  1. 1、本文档共15页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
图形学第二章

第二章 计算机绘图初步知识 本章主要学习内容 本节我们介绍绘制过程中的一些基本概念及一般图形的显示流程,同时以OpenGL图形软件包为例,介绍简单图形软件包所应包含的基本功能,为以后学习各章节打下基础。 2.1 如何在计算机上绘图 2.1.1计算机绘图的一般方法 1.用现有绘图软件系统 2.用绘图软件包 3.用操作系统的绘图功能 2.1.2一般图形的显示流程 计算机处理图形的过程一般分为三个阶段:①图形的数字化;②图形操作;③图形输出。 2.2 OpenGL图形软件包简介 图形软件包是软件开发人员在编制绘图软件时最常用的工具,它为程序员提供了使用图形设备的接口以及通用的绘图功能。相比于操作系统本身提供的绘图功能,图形软件包具有更强的针对性,对于开发图形应用软件更方便,而且可以使开发出的软件不依赖于系统平台。利用图形软件包,开发人员可以将主要精力放在用户特定的图形操作上。 图形软件包介于操作系统和应用程序之间,它可以是一个类库或函数库,封装了所有的图形操作功能,以API(application program interface)的形式为应用程序提供服务。一个简单图形软件包一般包含以下5种基本功能:(1)基本几何图元绘图函数;(2)三维坐标变换函数;(3)投影变换函数;(4)颜色设置函数;(5)光照模型函数。 2.2.1 基本几何图元的绘图函数 2.2.2 三维坐标变换函数 模型变换是在世界坐标系中进行的。缺省时,物体模型的中心定位在坐标系的中心处。OpenGL在这个坐标系中,有三个命令可以模型变换。 模型平移 glTranslate{fd}(TYPE x,TYPE y,TYPE z); 该函数用指定的x,y,z值沿着x轴、y轴、z轴平移物体 模型旋转 glRotate{fd}(TYPE angle,TYPE x,TYPE,y,TYPE z); 该函数中第一个变量angle制定模型旋转的角度,单位为度,后三个变量表示以原点(0,0,0)到点(x,y,z)的连线为轴线逆时针旋转物体。例如,glRotatef(45.0,0.0,0.0,1.0)的结果是绕z轴旋转45度。 模型缩放 glScale{fd}(TYPE x,TYPE y,TYPE z); 该函数可以对物体沿着x,y,z轴分别进行放大缩小。函数中的三个参数分别是x、y、z轴方向的比例变换因子。缺省时都为1.0,即物体没变化。 2.2.3 投影变换函数 事实上,投影变换的目的就是定义一个视景体,使得视景体外多余的部分裁剪掉,最终进入图像的只是视景体内的有关部分。 投影包括透视投影(Perspective Projection)和正视投影(Orthographic Projection)两种。 设置投影矩阵往往在OpenGL绘图和模型视图变换之前。一般情况下,调用: glMatrixMode(GL_PROJECTION); 将当前矩阵设置为投影矩阵。再调用: glOrtho 或 gluPerspective 来创建平行或透视投影。创建 完后,再调用: glMatrixMode(GL_MODELVIEW); 将当前变换矩阵设置为模型视图变换矩阵 2.2.4 颜色设置函数 void glClear(GLbitfield mask):清除指定缓存,例如mask的值可以是GL_COLOR_BUFFER_BIT(颜色缓存)和GL_DEPTH_BUFFER_BIT(深度缓存)等。 颜色缓存用于记录屏幕象素的颜色,深度缓存可以记录图形的前后位置,用于消隐等。 void glClearColor(GLclampf red,GLclampf green,GLclampf blue,GLclampf alpha):指定颜色缓存(RGBA方式)的当前清除值。 void glColor3d(GLdouble red, GLdouble green,GLdouble blue):在RGBA模式下,用该函数选取当前颜色,参数取值范围为[-1.0,1.0]。 2.2.5 光照模型函数 void glLightfv(GLenum light,GLenum pname,TYPE param):设置光源的参数。light是光源标识,pname代表需设置的属性,取值如GL_AMBIENT(环境光亮度)、GL_DIFFUSE(散射光亮度)、GL_SPECULAR(镜面反射光亮度)、GL_POSITION(位置)等。param表示需要给pname代表的属性设置的值。 void glMaterialf(GLenum face,GLenum pname,TYPE param):定义场景中

您可能关注的文档

文档评论(0)

youbika + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档