还剩12页未读,继续阅读
本资源只提供10页预览,全部文档请下载后查看!喜欢就下载吧,查找使用更方便
文本内容:
计算机图形信息处理复习题
一、简述题
1.什么是计算机图形学?试述计算机图形学研究的基本内容及主要应用领域计算机图形学(ComputerGraphics,简称CG)是计算机应用领域中的一个重要研究方向,目前尚属一门新兴的学科计算机绘图技术在科学研究、工程设计和生产实践中得到了广泛的应用人们在不断解决所提出的各种新问题的同时,又进一步丰富了这门学科的内容,推动了这门学科的发展计算机绘图显著提高了绘图的速度和精确度,把工程技术人员从繁琐的手工制图中解放出来,同时由于计算机的快速图形显示可以实现对目标的实时跟踪和控制,因此,利用计算机绘图已成为必然的趋势简单地讲,计算机图形学是研究计算机绘图的一门学科,它建立在传统的图学理论、应用数学及计算机科学基础上的一门边缘学科但是这样往往容易使人们将计算机图形学与计算机图像处理(ImageProcessing)混淆,因为这两者输出结果都是图形或图像因此,可以对计算机图形学作如下定义(国际标准化组织ISO的定义)“计算机图形学是研究通过计算机将数据转换为图形,并在专用显示设备上显示的原理、方法和技术的学科”4.计算机图形学研究的内容计算机图形学是计算机科学中一个比较年轻的分支学科,它的核心技术是如何建立所处理对象的模型并生成该对象的图形其主要的研究内容大体上可以概括为如下几个方面(l)几何模型构造技术(GeometricModelling)
(2)图形生成技术(ImageSynthesis)3图形的操作与处理方法(PictureManipulation)4图形信息的存储、检索与交换技术如图形信息的各种表示方法、组织形式、存取技术、图形数据库的管理、图形信息通信等5人机交互及用户接口技术
(6)动画技术7图形输出设备与输出技术
(8)图形标准与图形软件包的技术开发2.计算机图形学的应用领域计算机图形学有着广泛的应用领域,特别是近年来随着对计算机图形学原理的不断研究和新技术的不断产生,使得它深入到生产、科研、教学及生活等领域,目前主要应用在如下领域
(1)计算机辅助设计(CAD)和计算机辅助制造(CAM)
(2)事务管理中的交互式绘图
(3)地理信息系统
(4)办公自动化和电子出版技术
(5)系统模拟
(6)计算机辅助教学(CAI)
(7)过程控制
(8)计算机动画
(9)计算机艺术
2.试述计算机图形学与CAD、CAM技术的关系,举三个计算机图形学应用的例子3.计算机绘图与CAD/CAM技术的关系CAD和CG二者主要是用于工程设计、制图阶段,对于实际的生产和加工而言,它们还只是一个初级阶段然而,除了现代化设计、自动绘图以外,人们更希望能够自动化地加工、生产,所以CAM技术正是为达到这一目的而提供的一个重要手段CAM通过计算机直接控制加工设备,使它能自动地加工产品,并且由这种方法加工出的产品在数量和质量上都远远优于人工加工制造的产品CAM一般过程是先由CAD技术和计算机图形软件产生一个完整的并符合加工要求的数控语言,通过这种语言去控制那些数控机床、数控切割机等,从而使CAD自动绘图和CAM成为一体应当说计算机绘图是CAD的基础,而计算机绘图与CAD又共同构成了CAM的基础它们三者关系如图7所示可自编,例如,各种机械零件加工、集成电路光刻和印制电路板的钻孔等
3.试述计算机图形软件标准化的意义2.计算机图形软件的几种类型目前,计算机图形软件有多种不同类型,主要有以下几种(l)用现有的某种高级语言写成程序包,用户使用该语言调用需要的子程序生成各种图形由于用的是高级语言,所以编程并不困难,且具有便于移植推广的优点,但执行速度较慢,效率较低这类图形系统很多,如图形软件标准化的典型规范GKS和CORE文本就是采用程序包的形式2将某种高级语言的功能加以扩充,使其具有图形生成功能为此必须熟悉该高级语言的编译系统才能正确地扩充这种方法实现起来工作量较大,难以移植其优点是系统比较简练、紧凑、执行速度快现在许多高级语言已经扩充,并具备了屏幕图形的生成功能,如BASIC、Pascal、TurboC、BorlandC++、Java等3对于某种类型的设备可以配置专用的图形生成语言其优点是功能强,执行速度快事实上目前大多数绘图仪都配备了相应的图形生成语言比较著名的有GL(GraphicsLanguage)语言PL(PlotingLanguage)语言和Dxy语言由于这些语言都是与设备相关的,因此难以在不同类型的设备上使用目前各种设备的原理、功能差异很大,难以统一,这就使得图形系统的开发处于重重困难之中4为了克服上述矛盾,就要求产生一种通用的与设备无关的图形软件,这就是图形软件标准化问题为此1997年美国计算机协会ACM(AssociationforComputingMachinery)提出了核心图形系统(CoreGraphicsSystem)规范,即原西德提出了图形核心系统GKS(GraphicsKernelSystem)制定标准的目的是考虑到程序的可移植性当使用具体图形设备时只要和这个“标准”的图形系统作一个“接口”即可多年来人们对图形软件所涉及的算法做了大量的研究工作,都是为了提高速度,节省内存当然在计算机图形学中仍存在许多问题,如像素的拼合、几何造型、隐藏线隐藏面的消除等,这些问题正等待人们去作深入的探索和研究目前有的公司正力图用硬件来实现图形软件的有关算法,以提高效率3.计算机图形学的发展趋势当前,计算机绘图已在许多领域广泛应用,标准化、集成化、智能化、网络化是计算机绘图技术的主要发展趋势
4.什么是交互式绘图系统?它有哪几部分组成?第六章交互式绘图技术§6.1概述前面已指出,依靠程序的运行自动产生图形的绘图方式叫被动式绘图在被动式绘图中,程序和图形具有相对固定的联系,程序的直接运行结果就是某个预定的图形,操作员不能对运行中的程序进行干预,要想改变图形必须从修改源程序做起,即重新编辑、编译、连接运行……,这种工作方式对某些方面是不方便的,例如在总体设计、造型设计、外观设计以及建筑设计等场合下,往往需要边设计边调整,这就需要采用交互式绘图方式进行工作随着计算机绘图技术的广泛应用,交互处理已是必不可少的内容一个交互图形系统或图形应用程序,必须允许用户能动态地输入坐标位置,指定选择功能,设置交换参数,以及在图形显示期间能够对画面上的某些部分进行修改(如改变形状、改变颜色纹理以及移位、比例、旋转等变换处理)、删除、增添、存储或再显示操作,允许用户全部徒手绘制图形这种交互式作图方式完全区别于图形程序的被动式作图方式在计算机辅助设计、办公室自动化或其他应用领域中,交互式图形系统被积极推广,颇受欢迎图l表示一个机械图交互式设计过程交互式绘图把设计人员和计算机紧密地联系在一起,充分发挥了两者的特长,发挥了人的创造性,利用了人积累的经验设计人员给计算机设定参数,计算机记忆了大量的绘图相关信息,迅速地显示或绘制设计人员要求的图形图l表示一个机械图交互式设计过程交互式绘图技术使人与计算机能及时交换信息就计算机应用程序来说,用户的选择输入决定了程序的流向而对用户来说,根据提示所做的反馈输入及选择,能很快地得到相应的计算机应用程序的处理,同时也为进一步的交互准备必要的信息交互式绘图技术能灵活方便地运用程序一个应用程序包含各种不同的功能,一般将程序设计成某单驱动的单独模块对用户来说,运行应用程序,可能只关心其中一项或几项功能,通过交互式技术,用户能很快地获得相应功能的服务,而不受程序设计的限制由于交互式技术在计算机图形学中的普遍使用和重要性,人们也常把计算机图形学称之为交互式计算机图形学早期的交互式绘图技术与用户接口和应用程序相互渗透、嵌套、溶为一体,因而严重地依赖于应用程序20世纪80年代初开始,逐渐把交互式绘图技术与用户接口从应用程序中独立出来,提出了用户接口管理系统(UIMS UserInterfaceManagementSystem)的新概念,并逐渐形成相应的学科§6.2交互式绘图系统
一、交互式绘图系统的组成交互式绘图是在交互软件的支持下,由操作员通过交互绘图设备和计算机对话而随机进行的绘图交互技术的实现在很大程度上依赖于输入设备及支撑环境图2所示的是交互式绘图系统组成的概念化框图图6.2交互式绘图系统的组成进行交互式绘图,需要有具备图形交互功能的硬件和软件硬件主要由主机和输入设备及显示设备组成,而软件主要由应用数据库、应用程序和图形系统组成
(1)交互式绘图系统的软件l)应用数据库应用数据库保存着构造图形的一个或多个对象的全部描述信息这些信息包括物体各组成部分的几何信息数据、物体的属性,例如线型、色彩、纹理、表面性质等同时还有非几何的、文字或数值的信息,这对绘图过程中的交互都是有用的2)图形系统图形系统通常包括一组功能性图形子程序,它可提供各种图形功能,驱动特定的输出设备,并产生图形3)应用程序应用程序是交互式绘图系统的核心,是为各种不同应用而设计的,它从应用数据库中取得图形对象的各种数据,并对这些数据进行变换处理,再使用图形系统生成该对象图形,并在显示屏上或绘图仪上输出
(2)交互式绘图系统的硬件交互式绘图系统的硬件除主机外,重要的图形交互设备就是图形输入设备,如图3所示它们在软件的支持下担负着图形信息的输入职能图形交互设备种类繁多,如键盘、鼠标、光笔、数字化仪、操纵杆等等图3交互式绘图系统硬件
5.交互式绘图系统的交互任务是什么?设计交互绘图系统的主要原则是什么?交互任务就是交互系统用户向计算机内送入相关信息交互式绘图系统的基本交互任务包括定位、选择、文本输入和数值输入
三、交互式绘图系统的设计原则计算机辅助设计或计算机辅助绘图是一个以人为主,人机合作的过程要使人们对交互式绘图系统满意,必须遵循以下设计原则1.设计一致性保持交互系统的一致性,是指在设计系统各个环节时,应遵守统一的、简单的规则,保证不出例外情况2.简单易学提供提示和菜单是帮助用户学习和使用的有效方式.3.提供反馈在人机对话中不断用图形、文字或声音等方式对用户的操作作出积极反应,则会大大提高用户使用的积极性4.减少出错可能性5.提供改错能力6.面向多种技术层次7.减少记忆量
6.在交互式绘图技术中,常用的构图技术有哪几种?并作简要说明交互式绘图技术可分为3类构图技术、拾取技术和菜单技术,下面分别给予简单介绍
一、构图技术构图技术是指建立或修改物体的几何模型的技术,它可以通过选择作图命令和指定一系列定位点进行作图例如选择画直线命令后,在作图区先后指定两个点就可以在这两个点之间连一条直线用户可以通过观察显示屏上图形,利用交互式方式改变子图形之间相对位置,增加或减少某些子图形来构造一个新的图形,常用构图技术有如下几种l.定位法北理工P68要显示一个物体或字符串,就要确定其输出位置,此时常常采用定位输入装置来提供坐标值,如借助光笔或移动屏幕光标到要求的位置来获得当前屏幕位置例如先将光标移动到所需的屏幕位置,按下相应按键或者按钮,输入装置便会向系统发出物体应当放置的当前位置的坐标值确定文本位置的方法也与之相似,文本位置的选择要能说明字符串的起始、结束或中间的位置如果用定位设备画线,可以先标记第一个坐标点,给出线的起始端点,再移动装置在屏幕上标记第二个输入位置,给出线的终点然后在选择的两个界点之间“画”出一条线为便于物体的定位,可以设计一个显示坐标信息的软件程序,在设备或者装置移动时将坐标显示在光标位置附近这样,用户可以直接移动光标到显示出适当的坐标值的地方,最后按键选择这个定位位置2.约束法当需要绘制水平和垂直直线段时,运用水平和垂直约束技术可以避免由于人眼或定位设备带来的误差此时定位点是约定函数输入值如果用水平约束构造直线,在线段的第一点被确定后,无论光标在屏幕上如何运动,线段的纵坐标始终与起点相同,显示的是一条(x1,y1)到(x2,y1)的直线,如图4所示同样,如果用垂直约束构造直线,线段的横坐标始终与起点的相同,显示一条从(x1y1)到x1,y2的坚线段图6.4方向约束3.引力场法在用光标选图时,要把光标中心移到已知直线的端点或者到直线某点才开始作一条新的直线要使光标对准某一点需要花费较多时间,为了比较容易做到这一点,可用引力场法在每一条线段周围假想有一个区域,光标中心落在这个区域内时,就自动地被直线上最近的一个点所代替,这就好像一个质点进入了直线周围的引力场后,被吸引到这条直线上去一样,如图5所示图5利用引力场法使线段互联引力场区域大小要适中,太小了不易进入引力区,太大了线与线引力区相交,光标在进入引力区相交部分可能会被吸引到不是要选的线段上,这样就会出现错误4.橡皮筋法北理工P68华中P128在平面上确定一条直线一般是先定下起点再定下终点,最后把起点和终点连成直线如果要求这条直线能通过平面上某一点或和一己知圆相切,上述方法便不易做得很准确所谓橡皮筋技术就是在起点确定后,光标移出去定终点时,在屏幕上始终显示一条连结起点和光标中心的直线,这条直线随着光标中心位置的变动而变动,它就像在起点和光标中心之间紧紧地张着的一根橡皮筋,如图6所示有了这根橡皮筋便比较容易找到通过一个点或和一个圆相切的直线的位置图6橡皮筋法5.拖动法拖动就是将形体在空间移动,选择拖动物体命令后,先在作图区用定位设备拾取某个要拖动的物体,再按住键移动光标,则这个被拾取物体将随着光标的移动而移动,就像光标在拖动物体一样,放开键后,物体就固定下来,再移动光标对这个物体就不起作用图7显示了拖动物体的过程图7拖动法图形定位
7.试述窗口、视区和窗视变换的概念?窗视变换需经过那几个变换过程?写出各变换过程的变换矩阵、总体变换矩阵及变换公式窗口、视区与剪取在实际工作中,经常会遇到一些很大且图形复杂的工程图,而计算机屏幕的尺寸及分辨率是有限的,大幅面的工程图很难全部清楚的显示在屏幕上因此,计算机用户想在屏幕上观察一幅大幅面的工程图,就不得不分若干次来显示,且每次只能显示图纸上的一个矩形区域把图纸上分成的矩形区域称为窗口,由用户选定某一矩形区域的过程称为开窗口用户每次设定窗口之后,屏幕就只显示框口内的图形,而将窗口外的图形全部擦除,这一过程称为剪取通常,将图纸的坐标系定义为世界坐标系,而把屏幕上的坐标系定义为屏幕坐标系在实用的图形系统中,往往也把屏幕分为若干个矩形区域,如菜单区、信息区、图形显示区等显然,图形显示区是一个小于屏幕面积的矩形区域,将这一区域定义为视区(或称视见区)将世界坐标系中窗口内的图形显示在屏幕坐标系中的视区内,必须经过一定的几何变换,这一变换过程称为视见变换(或窗视变换)视见变换过程变换过程(北理工P27图2-2)平移变换将窗口连同其中的图形一起移动,使窗口的左下角与WC坐标系原点重合变换矩阵为变比变换将窗口连同其中的图形进行比例变换,使窗口的大小与指定的视区的大小一致变换矩阵为其中SX和SY称为比例因子,表示窗口到视区变换的比例平移变换把视区平移到指定的屏幕位置变换矩阵为变换公式世界坐标系的点经视见变换后的点为,则有其中
8.什么是复合变换?如何实现复合变换?复合变换前面讨论的二维图形的矩阵变换,都属于单一的“基本变换”但有一些图形变换,仅靠一次基本变换是不能实现的,有时需要对初始图形进行两次甚至多次基本变换才能实现,这种变换称为复合变换如图所示的变换可看成是先对矩形施以对y轴的对称变换,在施以沿+x轴方向的错切变换的复合变换而成其变换矩阵为二基本变换矩阵的乘积变换矩阵图形相对任一点P(xfyf)的比例变换矩阵平移比例平移图形相对任一点P(xfyf)的旋转变换矩阵
9.三维立体有哪几种构造模型?试述各构造模型的特点及应用§7-3三维立体的构造模型线框模型(WireframeModeling)线框模型是用几个多边形线框来描述三维立体的方法,是计算机图形学和CAD/CAM领域中应用最早的用来表示形体的模型
2.线框模型的特点优点结构简单,计算机内部易于表达,处理快;模型需要的几何信息就是线段的端点坐标,输入方便缺点有二义性;不便于用作几何形状的通用表达形式;无表面信息表面模型(SurfaaceModeling)表面模形是在线框模型的基础上,增加了有关生成立体各表面的数据而构成的模型,是由连接顺序的棱边围成的有限区域来定义立体的表面,再有表面的集合来定义立体这种模型通常用于构造复杂的曲面物体,构形时常常利用线框功能,先构造一线框图,然后用扫描或旋转等手段变成曲面也可以用系统提供的许多曲面图素来建立各种曲面模型表面模型的特点表面模型是在线框模型的基础上,增加了面边(包括环边)信息和表面的特征信息,从而满足了求交、消隐、明暗处理和数控加工的要求表面模型没有解决的问题是形体究竟在表面的哪一侧表面模型的种类按生成方式不同,表面模型有以下几种基本面通过对一条线扫描操作得到旋转面对一条线绕一轴旋转生成旋转面相交面用包定义的表面可以建立起相交面分析法表面用数学方程建立的表面雕塑曲面(自由曲面)样条曲面等组合平面实体模型(SolidModeling)实体模形能明确无误地反映物体的三维形貌它主要是明确定义了表面的那一侧存在形体用有向棱边的右手法则确定所在面外法线的方向,规定正向指向体外实体模型是三种模型中最重要的,也是出现最晚的其主要优点可以概括为完整定义了立体图形,能区别内外部能提供清晰的剖面图能准确地计算质量特性和有限元网格方便机械运动模拟
10.举例说明分解表示法中如何利用四叉树、八叉树描述复杂形状物体分解表示法是把一个几何体有规律地分解为有限个单元,用这个方法不仅可以表示平面的几何体,也可表示复杂的包括内部有孔的几何体D-rep法主要有八叉树法、细胞分解法、空间堆迭法等D-rep法便于形体的并、交、叉运算,容易计算几何体的几何特性,但不是一种精确的表示二维图形的四叉树法假定图形有象素构成,且为了得到这种图形的四叉树表示,需要有关区域具有一致性的判别准则对于两值图形,可以简单地把该区域的象素是否有相同值作为判别准则对于给定图形的四叉树的形成方法如下如果图形所占的区域是一致的,那么该图形对应的四叉树仅用一个结点表示,它是叶结点如果图形所占的区域是不一致的,那么该图形用一个结点表示,然后将图形等分为4个子图形,他们又对应不同的结点,既是上一层图形对应的根结点的子结点,又是与这个图形相对应的子四叉树的根结点对每一个子树递归的重复上述一致性判别及必要的分解,直至每一个子图形均可由相应的叶结点表示三维形体的八叉树(见北理工P107)三维实体的八叉树表示类似于二维物体的四叉树表示八叉树表示是将研究的空间递归地划分为8个卦限,从而组成八分支树的形式
11.在几何造型中,用边界表示法描述实体,其表面必须满足什么条件?该方法的主要特点是什么?§7-4实体模型的构造边界表示(Boundaryrepresentation,B-rep)法边界表示法是以物体边界为基础定义和描述几何形体的方法,并能给出完整的界面描述每个物体都是由有限个面(平面或曲面)构成,每个面可以由有限条边围成的有限个封闭域定义用B-rep法描述实体,其表面必须满足一定条件封闭、有向、不自交、有限并相连接,能区分实体边界内、外、面上的点边界表示法的一个重要特点是在表示法中既包含几何信息,又包含拓扑信息边界表示法的最大优点是允许绝大多数有关几何体结构的运算直接用几何体的面、边、顶点定义的数据来实现,有利于生成和绘制线框图、投影图以及对有限元网格的划分和几何特性的计算缺点是数据结构复杂,存储量大,几何运算时间长,对实体的整体描述能力差
12.在三维几何造型的各个阶段表示形体的坐标系有哪些?它们之间的关系如何?三维几何造型主要是指三维空间的立体经并、交、差等集合运算和旋转、平移、缩放等几何变换,产生设计者所希望得到的较为复杂的立体模型过程它是三维图形系统的核心和基础任何几何元素的定义和由几何形体所产生的图形的输入与输出都是在一定的坐标系中完成的在图形生成与输出的各个阶段中采用不同的坐标系的目的是为了方便设计者的操作,提高图形处理效率下图表示图形的三维变换流程的一般步骤造型坐标系通常定义为右手坐标系,用于定义基本形体每一个被定义的体素都有自己的坐标原点,便于定义和调用通过调用可将它放置在世界坐标系中任意位置,因此也称局部坐标系世界坐标系又称用户坐标系与造型坐标系一致,两者是全局与局部的关系观察坐标系(投影坐标系)为了获得在世界坐标系中已经建模的三维立体景物的显示,必须建立用于观察的坐标系
13.形体的几何信息和拓扑信息各包含哪些内容?各起什么作用?举例说明之
14.消隐的意义是什么?消隐算法有哪两类?并举例说明之消隐技术概述物体的可见性非消隐图的二义性可见性与观察方向有关确定哪些边、哪些面是可见的,哪些边、哪些面是不可见的,并消除那些不可见的棱线和表面,就是所谓的消隐问题目前,虽已提出了多种消隐算法,但仍吸引人们探索新的有效的解决方法消隐问题是计算机图形学中引人注目的难题之一所有的隐线、隐面消除算法均和某种排序有关,排序的主要依据是被显示的点、线、面或体与观察点的几何距离消隐算法一般分为两类,区分的依据是看消隐算法是在那种空间中实现的如果算法是在显示对象的物理坐标系中实现的,称为物理空间算法如果算法是在显示图形的屏幕坐标系中实现的,称为图像空间算法
15.简述Bezier曲线的特性三次样条曲线是通过所有指定的数据点,但曲线的形状依赖起端点切矢的方向和大小,即边界条件但它不能提供设计曲线的直观感觉,使用也不灵活方便法国雷诺公司工程师贝塞尔在20世纪70年代提出了一种描述曲线的方法,就是用光滑参数曲线端逼近折线多边形,即贝塞尔曲线贝塞尔曲线不要求给出导数,只要给出数据点就可构造曲线,而且曲线次数严格依赖于确定该段曲线的数据点个数,曲线形状依赖于该多边形的形状,只有第一个顶点和最后一个顶点在曲线上贝塞尔曲线的数学表达式由n+1个点定义n次多项式曲线各段的参数方程为9-12其中,是伯恩斯坦多项式,称为基函数贝塞尔曲线的性质贝塞尔曲线的起点和终点分别是特征多边形的第一个顶点和最后一个顶点曲线在起点和终点处的切线分别是特征多边形的第一条边和最后一条边,且切矢的模长分别为相应边长的n倍凸包性几何不变性贝塞尔曲线的凸包性曲线的形状由特征多边形的顶点唯一确定,与坐标系的选取无关
16.简单光照模型对物体有什么假设,有哪三种光组成?写出这三种光亮度的计算公式如果计算出物体上每一个可见点所“发出”的光强度和色彩,把它转化为显示屏幕上相应像素的灰度和色彩强度,就能得到物体的真实感图形光照模型就是模拟光在物体间的传递过程,以确保物体可见表面每一点的亮度和颜色当光照射到一个物体表面时,光可能被吸收、反射或折射反射和折射的光使物体可见如果入射光全部被吸收,物体将不可见,称物体为黑体一个物体表面呈现的颜色是有物体表面向视线方向辐射的光能中各种波长的分布所确定的如果物体是不透明的,则物体表面呈现的颜色仅有其反射光决定,通常把反射光考虑成环境反射光、漫反射光和镜面反射光三个分量的组合环境反射光环境反射光是由于邻近物体所造成的光多次反射所产生的光是来自四面八方的,如从墙壁、地板以及天花板等反射回来的光,是一种分布光源通常将这种光产生的效应简化为在各个方向都有均匀的光亮度一个物体只有环境光照明是,其上各点的明暗程度完全一样其光亮度表示为其中,—物体的环境光反射光亮度;—环境光亮度;—物体表面的环境光反射系数漫反射光漫反射光是由特定的光源在物体表面反射光中那些向空间各方向均匀反射出去的光这种光的反射强度与观察点的位置是无关的,它的光强度与入射光方向和反射点处表面法线间的夹角余弦成正比设物体表面在P点法线为N,从P点指向光源的向量为L,两者夹角为点P处漫反射光亮度为其中,—表面漫反射光亮度—入射光的光亮度—漫射系数(决定与表面材料及入射光波长)—入射光线与法线间的夹角,漫反射镜面反射光镜面反射光是朝一个方向的反射光对于理想镜面,入射到表面的光严格地遵守光的反射定律,只有在反射方向上,观察者才能看到从镜面反射出来的光线,如下图a对于一般光滑表面,由于表面具有一定的粗糙度,其表面实际上是有许多朝向不同的微小表面组成,其镜面反射光散布在反射方向周围,如下图ba纯镜面b光滑表面镜面反射镜面反射光亮度可表示为其中,—观察者接受到的镜面反射光亮度—入射光的亮度—镜面反射系数(与材料性质和入射光波长有关)—镜面反射方向和视线方向的夹角—镜面反射光的会聚系数(与物体表面的光滑度有关),一般取1~2000对于较光滑的表面,其镜面反射光会聚程度较高,值较大;而较粗糙的镜面反射光呈发散状态,值较小Phong(冯)光照模型综上所述,从视点观察到物体表面上任一点亮度应为环境光、漫反射光、镜面反射光的总和,有即当有m个光源时,上式写为这就是简单光照模型另为入射光方向的单位矢量,为表面法线单位矢量,为反射光方向单位矢量,为视线方向的单位矢量,则余弦函数可用矢量点矢表示,即则对于彩色显示,将光源分成红、绿、兰(R、G、B)三基色光,对于每一基色光分别用相应的算式计算,即Phong模型中各方向矢量上式中镜面反射光一项对三个式子是一样的
17.阴影有哪两类?分别说明之阴影是指景物中那些没有被光源直接照射到的暗区阴影有助于弄清场面中各物体之间的空间位置关系,增加观察者对物体的深度感知,增强图形的立体感和场景层次感,使画面更具真实感与消隐一样,光线不能到达的面,则产生阴影面如果是视点之外的点光源,只要将视点移至光源,以照射方向作为观察方向时确定隐藏面问题阴影分为自身阴影和投射阴影自身阴影是物体本身遮挡而使光线照不到的某些面投射阴影是由于物体的遮挡使场景中位于它后面的的物体受不到光照而形成投射阴影有本影和半影之分在观察一个物体影子时,可以看到位于中间全黑的轮廓分明部分就是本影;本影周围半明半暗的区域为半影自身阴影和投射阴影本影是哪些没有被光源直接照射的部分;而半影是那些被一部分光源直接照射但未被其余光源照射的部分半影计算比较复杂,计算量大,在许多场合下一般只考虑本影,也就是假设环境由点光源或平行光源照明本影计算工作量与光源位置有关如果光源位于无穷远处,计算阴影比较容易,可由正投影来处理而对于有限远处的点光源,问题多些,这时需要透视投影技术来处理;最困难的情况是点光源位于视区之内的情形,这时需要将空间分成若干区域,并分别计算各区域中的阴影自身阴影生成方法自身阴影生成方法从原理上讲非常简单,其生成过程如下
(1)首先将视点置于光源位置,以光线照射方向作为观察方向,对在光照模型下的物体实施消隐算法,判别出在光照模型下物体的“隐藏面”,并在数据文件中加以标识
(2)然后按实际的视点和观察方向,对物体实施消隐算法,生成真正消隐后的立体图形
(3)检索数据文件,核查消隐后生成的图形中是否包含有在光照模型下的“隐藏面”,如有,则加以阴影符号标识这些面投射阴影生成方法影域多面体方法在景物空间引入影域多面体的概念由于物体遮挡了光源,在物体后面形成一个影域影域是景物空间中光线被该物体轮廓多边形所遮挡的区域(物体轮廓多边形沿光线投影方向作平移扫描所形成的区域)影域多面体影域多面体是视域四棱锥和影域的空间布尔交,如图所示显然,位于影域多面体的任何景物表面均为阴影面,所以确定某点是否落在阴影中,只要判别该点是否位于影域多面体中即可该算法与扫描线算法相结合就容易实现CGCADCAM图7CG、CAD、CAM关系ABB*A*。