《《计算机图形学概述》PPT课件.ppt》由会员分享,可在线阅读,更多相关《《计算机图形学概述》PPT课件.ppt(48页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、x,y=(1,2),(2,3),(3,4),(4,5),(5,6)The Stanford Bunny 斯坦福兔子斯坦福兔子广义的图形概念广义的图形概念 凡是能够在人的视觉系统中形凡是能够在人的视觉系统中形成视觉印象的客观对象都称为图成视觉印象的客观对象都称为图形。如:形。如:(1)(1)自然景物自然景物 (2)(2)照片和图片照片和图片 (3)(3)工程图、设计图和方框图工程图、设计图和方框图 (4)(4)人工美术绘画、雕塑品人工美术绘画、雕塑品 (5)(5)用数学方法描述的图形用数学方法描述的图形 (包括几何图形、代数方(包括几何图形、代数方 程、分析表达式或列表所程、分析表达式或列表所
2、确定的图形)确定的图形)图形的概念图形的概念计算机图形学是研究计算机如何生成、处计算机图形学是研究计算机如何生成、处理和显示图形的!理和显示图形的!计算机图形学计算机图形学主要的目的就是要利用计主要的目的就是要利用计算机产生令人赏心悦目的真实感图形。算机产生令人赏心悦目的真实感图形。计算机图形学中的图计算机图形学中的图形概念形概念是指由点、线、面、是指由点、线、面、体等体等几何要素几何要素和和明暗、明暗、灰度(亮度)、色彩灰度(亮度)、色彩等等非几何要素非几何要素构成的,从构成的,从现实世界中现实世界中抽象抽象出来的出来的带有灰度、色彩及形状带有灰度、色彩及形状的图或形。的图或形。?计算机图形
3、学解决了什么问题计算机图形学解决了什么问题显示器等输出设备如何进行图形图像的显示?显示器等输出设备如何进行图形图像的显示?计算机图形学解决了什么问题计算机图形学解决了什么问题1 1、坐标系统、坐标系统 在现实世界中,所有的物体都具有几何特征,但计算机本在现实世界中,所有的物体都具有几何特征,但计算机本身只能处理数字,身只能处理数字,将几何实体与数据联系在一起的唯一纽将几何实体与数据联系在一起的唯一纽带就是坐标,带就是坐标,如:现实的几何实体的数字表示可以是一些如:现实的几何实体的数字表示可以是一些坐标值,如(坐标值,如(x,y,z)。)。为了使被显示的几何实体数字化,要在被显示的物体所在为了使
4、被显示的几何实体数字化,要在被显示的物体所在的空间中定义坐标系。的空间中定义坐标系。P3(0,1,0)P4(0,1,2)P7(0,0,2)P5(1,1,2)P2(1,1,0)P1(1,0,0)P6(1,0,2)yzx立方体的坐标表示(1)(1)、模型坐标系(局部坐标系):当构造单个对象的数字模型、模型坐标系(局部坐标系):当构造单个对象的数字模型时,为了方便时,为了方便,可以将其置于一个特定的坐标系下,即模型坐可以将其置于一个特定的坐标系下,即模型坐标系或局部坐标系标系或局部坐标系.(2)(2)、世界坐标系:为描述图形场景中所有图形之间的空间关系,、世界坐标系:为描述图形场景中所有图形之间的空
5、间关系,将它们置于一个统一的坐标系中,该坐标系被称为世界坐标系。将它们置于一个统一的坐标系中,该坐标系被称为世界坐标系。(3)(3)、设备坐标系:要输出经过处理后的数字化图形,需要在输设备坐标系:要输出经过处理后的数字化图形,需要在输出设备上建立一个坐标系,称为设备坐标系。出设备上建立一个坐标系,称为设备坐标系。YpXpy2x2z2世界坐标系屏幕坐标系视口z1模型坐标系x1y1窗口窗口坐标系近平面远平面说明:在计算机显示三维世界的过程中,需要在世界说明:在计算机显示三维世界的过程中,需要在世界坐标系中给定一个坐标系中给定一个视见体视见体,视见体内包含的内容是我,视见体内包含的内容是我们对场景感
6、兴趣的部分。们对场景感兴趣的部分。计算机显示三维场景过程中的三个空间:三维景物空间计算机显示三维场景过程中的三个空间:三维景物空间二维投影平面二维显示平面二维投影平面二维显示平面YpXpy2x2z2世界坐标系屏幕坐标系视口z1模型坐标系x1y1窗口窗口坐标系近平面远平面三维实体绘制的基本任务三维实体绘制的基本任务为了绘制三维几何实体,必须完成四个基本任务:为了绘制三维几何实体,必须完成四个基本任务:第一,用数学方法建立所需三维场景的几何描述,并将他第一,用数学方法建立所需三维场景的几何描述,并将他们输入至计算机;们输入至计算机;第二,将三维几何描述转换为二维透视图;第二,将三维几何描述转换为二
7、维透视图;第三,将二维对象进行光栅化;第三,将二维对象进行光栅化;第四,进行显示。第四,进行显示。如果用计算机在图形设备上生成连续色调的真实感图形则如果用计算机在图形设备上生成连续色调的真实感图形则需要在上述的第二个任务之中添加上两个任务:需要在上述的第二个任务之中添加上两个任务:确定场景确定场景中的所有可见面中的所有可见面和和添加光照以计算场景中可见面的颜色添加光照以计算场景中可见面的颜色,然后再进行光栅化和显示。然后再进行光栅化和显示。2 2、几何实体的表示和建模、几何实体的表示和建模 获得三维物体在图形设备上真实感图形,首先要做的就获得三维物体在图形设备上真实感图形,首先要做的就是是建立
8、物体的模型,建立物体的模型,或者称为物体的计算机描述,它输或者称为物体的计算机描述,它输出几何对象。出几何对象。再简单点:建模过程让计算机再简单点:建模过程让计算机“认识认识”该物体的过程。该物体的过程。如,比较简单的,可以用一个隐函数来表示一个几何实如,比较简单的,可以用一个隐函数来表示一个几何实体,如一个球的表示体,如一个球的表示:也可以是一系列坐标表示如:也可以是一系列坐标表示如:P3(0,1,0)P4(0,1,2)P7(0,0,2)P5(1,1,2)P2(1,1,0)P1(1,0,0)P6(1,0,2)yzx立方体的坐标表示2 2、几何实体的表示和建模、几何实体的表示和建模 复杂物体建
9、模:复杂物体建模:对于三维物体最简单的方式是用一组包围物体内部的平对于三维物体最简单的方式是用一组包围物体内部的平面多边形来表示。对于多面体的多边形表示精确地定义面多边形来表示。对于多面体的多边形表示精确地定义了物体的表面特征,而对于曲面则可以采用多边形网格了物体的表面特征,而对于曲面则可以采用多边形网格进行逼近。进行逼近。除了多边形形式,其它表示三维物体的方法还有利用除了多边形形式,其它表示三维物体的方法还有利用Bzier曲线曲面、曲线曲面、B样条曲线曲面、孔斯曲面以及它们的样条曲线曲面、孔斯曲面以及它们的有理形式等分段和分片参数多项式的形式来对物体表面有理形式等分段和分片参数多项式的形式来
10、对物体表面进行描述,这些形式我们在第进行描述,这些形式我们在第9,10章详细进行讲述章详细进行讲述 3 3、几何处理、几何处理 由于计算机屏幕只能显示二维的图形,接下来需要将真实世由于计算机屏幕只能显示二维的图形,接下来需要将真实世界中的三维物体的数字描述转换为二维图形,界中的三维物体的数字描述转换为二维图形,投影投影到二维屏到二维屏幕上。幕上。存在多种投影方法可以使用,我们将在存在多种投影方法可以使用,我们将在第第5 5章章详细讨详细讨论。论。YpXpy2x2z2世界坐标系屏幕坐标系视口z1模型坐标系x1y1窗口窗口坐标系近平面远平面3 3、几何处理、几何处理 在投影之前,还需对三维场景做很
11、多处理。在投影之前,还需对三维场景做很多处理。(1 1)变换)变换:为了得到最终的图形,首先需要将需要显示的对为了得到最终的图形,首先需要将需要显示的对象以合适的位置、大小和方向放置于整体的场景中,需要对象以合适的位置、大小和方向放置于整体的场景中,需要对该对象在场景中作平移,放大和缩小等操作,这些操作定义该对象在场景中作平移,放大和缩小等操作,这些操作定义了把物体从局部坐标系放到世界坐标系所需要的变换。了把物体从局部坐标系放到世界坐标系所需要的变换。所以,变换就是指对象在不同坐标系之间的转换,这些变换所以,变换就是指对象在不同坐标系之间的转换,这些变换可能改变它们的形状和位置,或者改变它们的
12、表示。可能改变它们的形状和位置,或者改变它们的表示。在第在第4 4章,章,我们将详细讨论变换过程。我们将详细讨论变换过程。YpXpy2x2z2世界坐标系屏幕坐标系视口z1模型坐标系x1y1窗口窗口坐标系近平面远平面(2 2)裁剪:)裁剪:由于显示系统不可能一次看到整个世界。由于显示系统不可能一次看到整个世界。在投在投影之前,三维空间中的物体要被三维视见体进行裁剪。如果影之前,三维空间中的物体要被三维视见体进行裁剪。如果三维物体在视见体内,则它会投影在投影平面上,如果在视三维物体在视见体内,则它会投影在投影平面上,如果在视见体之外,则它要被裁减掉,不会出现在图像里。如果与视见体之外,则它要被裁减
13、掉,不会出现在图像里。如果与视见体相交,则只在图像中看到在视见体内的部分。见体相交,则只在图像中看到在视见体内的部分。YpXpy2x2z2世界坐标系屏幕坐标系视口z1模型坐标系x1y1窗口窗口坐标系近平面远平面(2 2)裁剪:)裁剪:当然,也可以在投影之后对三维物体的二维投影进行裁剪,当然,也可以在投影之后对三维物体的二维投影进行裁剪,即进行二维裁剪。此时,在投影平面上的场景显示区域称为即进行二维裁剪。此时,在投影平面上的场景显示区域称为裁剪窗口。如果三维物体的投影在裁剪窗口之内,则它会出裁剪窗口。如果三维物体的投影在裁剪窗口之内,则它会出现在图像上;如果三维物体的投影在裁剪窗口之外,则它要现
14、在图像上;如果三维物体的投影在裁剪窗口之外,则它要被裁剪掉,就不会出现在图像里。如果三维物体的投影与裁被裁剪掉,就不会出现在图像里。如果三维物体的投影与裁剪窗口相交,则只在图像中看到窗口内的那部分。剪窗口相交,则只在图像中看到窗口内的那部分。YpXpy2x2z2世界坐标系屏幕坐标系视口z1模型坐标系x1y1窗口窗口坐标系近平面远平面(3)消除隐藏线、面:)消除隐藏线、面:如果被其它的对象遮挡,如果被其它的对象遮挡,则图形不能被显示在屏幕上。隐藏面的消除即去则图形不能被显示在屏幕上。隐藏面的消除即去掉那些看不到的面,留下可见面。掉那些看不到的面,留下可见面。在第在第7章,章,我们我们将详细讨论如
15、何进行隐藏面的消除。将详细讨论如何进行隐藏面的消除。YpXpy2x2z2世界坐标系屏幕坐标系视口z1模型坐标系x1y1窗口窗口坐标系近平面远平面YpXpy2x2z2世界坐标系屏幕坐标系视口z1模型坐标系x1y1窗口窗口坐标系近平面远平面(4 4)投影:)投影:经过多次变换和裁剪处理后,最后得到的经过多次变换和裁剪处理后,最后得到的基基本图元本图元(是指没有被裁剪掉、会出现在图像里面的对象)(是指没有被裁剪掉、会出现在图像里面的对象)必须投影成为二维对象,才能显示在屏幕上。必须投影成为二维对象,才能显示在屏幕上。(5)光照:)光照:为了提高显示效果,需要给场景设置光为了提高显示效果,需要给场景设
16、置光照、颜色、材质或纹理才能让它看起来更真实,也照、颜色、材质或纹理才能让它看起来更真实,也就是完成就是完成真实感图形的绘制。真实感图形的绘制。如果进行真实感图形如果进行真实感图形绘制,需要计算可见面投射到观察者眼中的光亮度绘制,需要计算可见面投射到观察者眼中的光亮度大小和色彩组成,并将它转换成适合图形设备的颜大小和色彩组成,并将它转换成适合图形设备的颜色值,从而确定投影画面上每一象素的颜色,最终色值,从而确定投影画面上每一象素的颜色,最终生成图形。生成图形。第第8章章将详细介绍光照明模型。将详细介绍光照明模型。4 4、光栅化、光栅化当完成了投影变换,接下来处理的对象就是二维当完成了投影变换,
17、接下来处理的对象就是二维对象。二维对象的图元已经用屏幕坐标系表示了。对象。二维对象的图元已经用屏幕坐标系表示了。如要显示上述的投影后的图形元素,必须利用一如要显示上述的投影后的图形元素,必须利用一个光栅化或扫描转化过程,把这些图形的几何信个光栅化或扫描转化过程,把这些图形的几何信息转换为一组象素值,放在帧缓存里。息转换为一组象素值,放在帧缓存里。将如何生将如何生成简单几何元素(点、线、面等)的光栅图形问成简单几何元素(点、线、面等)的光栅图形问题放在题放在第第3 3章中章中首先讨论。首先讨论。5、显示显示一旦确定了对应象素值,把帧缓存里的图形输出一旦确定了对应象素值,把帧缓存里的图形输出到显示
18、屏幕或绘制器上过程可自动完成,具体显到显示屏幕或绘制器上过程可自动完成,具体显示原理在第示原理在第2章中详细讨论。章中详细讨论。表示处理显示计算机图形学计算机图形学(Computer Graphics,简称:简称:CG)是研究如何在是研究如何在计算机环境下生成、处理和显示图形的一门学科。计算机环境下生成、处理和显示图形的一门学科。计算机图形学的主要研究对象计算机图形学的主要研究对象在计算机环境下景物的在计算机环境下景物的几何建模方法几何建模方法(modeling)、对模型的对模型的处理方法、处理方法、几何模型的几何模型的绘制技术绘制技术(rendering)、图形输入和控制的图形输入和控制的人
19、机交互界面人机交互界面(user interface)。例如,要研究如何在计算机上表示飞机和汽车外形、方便地例如,要研究如何在计算机上表示飞机和汽车外形、方便地对飞机和汽车外形进行修改、快速地绘制它们的真实感图形对飞机和汽车外形进行修改、快速地绘制它们的真实感图形计算机图形学的研究内容计算机图形学的研究内容如何在计算机中表示图形如何在计算机中表示图形如何利用计算机进行图形计算、处理如何利用计算机进行图形计算、处理图形的显示图形的显示表示处理显示图形与图像图形与图像它是用摄像机或扫描仪等手段将客观世界中原来存在的图形它是用摄像机或扫描仪等手段将客观世界中原来存在的图形摄制成数字化图像,对图像进行
20、处理、分析和理解,从图像摄制成数字化图像,对图像进行处理、分析和理解,从图像中提取所关注的图形的二维或者三维几何信息。纯指计算机中提取所关注的图形的二维或者三维几何信息。纯指计算机内以位图形式存放的灰度信息。内以位图形式存放的灰度信息。图形含有几何属性,更强调场景的几何表示,是由场景的几图形含有几何属性,更强调场景的几何表示,是由场景的几何模型和景物的物理属性共同组成。何模型和景物的物理属性共同组成。图像处理的研究内容图像处理的研究内容图像增强、边缘提取和图像分割、图像压缩、纹理分析、形图像增强、边缘提取和图像分割、图像压缩、纹理分析、形状特征提取、模式识别和三维形体重建等。状特征提取、模式识
21、别和三维形体重建等。计算机图形学的发展史计算机图形学的发展史计算机图形设备和交互技术计算机图形设备和交互技术计算机图形学是随着计算机技术而发展起来的计算机图形学是随着计算机技术而发展起来的早期的计算机是用来做数值计算和处理的。计算早期的计算机是用来做数值计算和处理的。计算的结果用图形输出更直观,易理解。的结果用图形输出更直观,易理解。例如:对数据例如:对数据x,y=(1,2),(2,3),(3,4),(4,5),(5,6)1)1)19461946年,第一台电子计算机的问世推动年,第一台电子计算机的问世推动了许多学科的发展和新学科的建立,其了许多学科的发展和新学科的建立,其中就包括现代图形学技术
22、中就包括现代图形学技术。2)2)19591959年,美国年,美国Calcomp公司研制出的世界上第公司研制出的世界上第一台滚筒式绘图机,使计算机辅助绘图仪开始一台滚筒式绘图机,使计算机辅助绘图仪开始代替人工绘图。代替人工绘图。3)3)2020世纪世纪5050年代末期,美国年代末期,美国MITMIT林肯实验室研制林肯实验室研制出的空中防御系统标志着交互式图形技术的出的空中防御系统标志着交互式图形技术的诞生。诞生。4)4)19621962年,年,I.E.I.E.萨瑟兰德在萨瑟兰德在其博士论文其博士论文SKETCHPAD:一一个人机通信的图形系统个人机通信的图形系统中首次提出计算机图形学、中首次提出
23、计算机图形学、交互技术、分层存储符号交互技术、分层存储符号的数据结构等新思想。这的数据结构等新思想。这些基本理论和技术至今仍些基本理论和技术至今仍是现代图形技术的基础。是现代图形技术的基础。计算机图形系统计算机图形系统在几何造型系统中,描述物体的三维模型有三种,即在几何造型系统中,描述物体的三维模型有三种,即线框模型、实体模型和表面模型线框模型、实体模型和表面模型1)早期的绘图软件大都采用早期的绘图软件大都采用线线框式框式图形数据结构,该结构图形数据结构,该结构特别适合于图形的几何变换特别适合于图形的几何变换和交互显示,但无法在计算和交互显示,但无法在计算机内完整地定义三维物体。机内完整地定义
24、三维物体。这种初期的线框造型系统只能表达基本的几何信息,不具备这种初期的线框造型系统只能表达基本的几何信息,不具备表达几何数据间拓扑关系的能力,实体拓扑信息以及形体表表达几何数据间拓扑关系的能力,实体拓扑信息以及形体表面信息的缺失使得面信息的缺失使得CAM均无法实现。均无法实现。2)20世纪世纪60年代末期开始年代末期开始研究和发展研究和发展实体造型实体造型技术技术,如英国剑桥大,如英国剑桥大学的学的I.C.Braid的的BUILD系统、美国罗系统、美国罗彻斯特大学的彻斯特大学的PADL-1系统和日本北海道大系统和日本北海道大学的学的TIPS-1系统。这系统。这些系统都在计算机内些系统都在计算
25、机内提供了对物体的完整提供了对物体的完整的几何定义,可随时的几何定义,可随时提取所需信息。提取所需信息。可以直接在三维空间进行产品的设计、修改、观察,从而使可以直接在三维空间进行产品的设计、修改、观察,从而使设计活动变得直观、简单和高效。设计活动变得直观、简单和高效。3)3)目前目前国际上应用较广的实体造型系统有国际上应用较广的实体造型系统有IBM公司的公司的CADAM、Dassault System公司的公司的CATIA、SDRC公公司的司的Geomod、PT公司的公司的Pro/Engineer、Spatial Technology公司的公司的ACIS、Solidworks公司的公司的Sol
26、idworks等。设计人员可以直接在三维空间进行产等。设计人员可以直接在三维空间进行产品的设计、修改、观察,从而使设计活动变得直观、品的设计、修改、观察,从而使设计活动变得直观、简单、高效。简单、高效。IBM公司的公司的CADAM系统系统Dassault System公司公司的的CATIACATIACATIA系统设计的轮船系统设计的轮船PTPT公司的公司的Pro/EngineerPro/Engineer系统系统3)1964年年MIT的教的教授授Steven A.Coons提出了被后人称为提出了被后人称为通过插值四条任意通过插值四条任意的边界曲线来构造的边界曲线来构造曲面曲面,发展成发展成表面表
27、面造型技术(曲面造造型技术(曲面造型)型)P(u,0)P(0,v)Bezier、B-样条、孔斯样条、孔斯计算机图形的标准化计算机图形的标准化官方标准官方标准1)1)第一个图形软件标准是由德国提出的图形核心系统第一个图形软件标准是由德国提出的图形核心系统GKS,这是一个二维图形软件包。这是一个二维图形软件包。2)1988年,年,GKS的三维扩充的三维扩充GKS-3D成为三维图形软件成为三维图形软件标准。标准。GKS标准标准下的图形下的图形3)3)19861986年,年,ISO提出程序员分层交互图形系统提出程序员分层交互图形系统PHIGS,支持三维图形的层次嵌套结构。支持三维图形的层次嵌套结构。P
28、HIGS标准下的图形标准下的图形非官方标准非官方标准SGI等公司开发的等公司开发的OpenGL,Sun公司推出的公司推出的Java 3D,Microsoft公司的公司的DirectX等。等。OpenGLOpenGL制作的游戏制作的游戏Java 3D制作的游戏制作的游戏DirectXDirectX制作的游戏制作的游戏1.3 1.3 计算机图形学的应用计算机图形学的应用计算机辅助设计与制造计算机辅助设计与制造(computer aided design and manufactory,CAD/CAM)地理信息系统地理信息系统(geographical information system,GIS)
29、科学计算可视化科学计算可视化(visualization in scientific computing,VS)计算机动画和艺术计算机动画和艺术计算机模拟和仿真计算机模拟和仿真虚拟现实虚拟现实(virtual reality,VR)计算机辅助设计计算机辅助设计(CAD)(CAD)已广泛应用于飞机、汽车、已广泛应用于飞机、汽车、船舶的外形设计、超大规模集成电路设计,以及建筑、船舶的外形设计、超大规模集成电路设计,以及建筑、服装、印染、玩具设计等领域。服装、印染、玩具设计等领域。CADCAD技术使得工程、技术使得工程、雪佛莱敞篷轿车曲面造型雪佛莱敞篷轿车曲面造型产品设计产品设计和施工图和施工图纸不
30、必再纸不必再由人工绘由人工绘制,可大制,可大大缩短设大缩短设计周期计周期。(1 1)计算机辅助设计与制造)计算机辅助设计与制造CAD/CAMNurbs或或Bezier曲面曲面(2 2)地理信息系统)地理信息系统 地理信息系统记录着关于人口、城镇乡村、高山平地理信息系统记录着关于人口、城镇乡村、高山平原地形、矿藏、森林、旅游等大量信息。利用地理系统原地形、矿藏、森林、旅游等大量信息。利用地理系统中的图形软件可绘制出地理、地质的以及其他自然现象中的图形软件可绘制出地理、地质的以及其他自然现象的高精度勘探、测量图形,如地理图、人口分布图、水的高精度勘探、测量图形,如地理图、人口分布图、水资源分布图等
31、。资源分布图等。(3 3)科学计算可视化)科学计算可视化 可视化技术广可视化技术广泛应用于流体力学、泛应用于流体力学、有限元分析、医学、有限元分析、医学、天气预报、海洋和天气预报、海洋和空间探测等领域。空间探测等领域。已成为一种从海量已成为一种从海量的计算数据和测量的计算数据和测量数据中发掘其蕴含数据中发掘其蕴含的自然、物理现象的自然、物理现象和规律的新的通用和规律的新的通用手段。手段。体绘制体绘制面绘制面绘制面绘制面绘制可视化可视化(4 4)计算机动画和技术)计算机动画和技术 计算机动画计算机动画和艺术是用计算机和艺术是用计算机来生成各种逼真的来生成各种逼真的虚拟场景画面和特虚拟场景画面和特
32、效效果,从而为人效效果,从而为人们提供一个充分展们提供一个充分展示个人想象力和艺示个人想象力和艺术才能的空间。术才能的空间。(5 5)计算机模拟和仿真)计算机模拟和仿真 计算机模拟和仿真已广泛应用到产品和工程设计、航计算机模拟和仿真已广泛应用到产品和工程设计、航空驾驶和实验等工作中,如构造虚拟天空、地面、山峰、空驾驶和实验等工作中,如构造虚拟天空、地面、山峰、树木等,并产生出巨大的经济效益。树木等,并产生出巨大的经济效益。(6 6)虚拟现实)虚拟现实虚拟现实是指由虚拟现实是指由计算机实时生成计算机实时生成一个虚拟的三维一个虚拟的三维空间,用户可在空间,用户可在其中自由运动,其中自由运动,随意观察周围的随意观察周围的景物,并通过一景物,并通过一些特殊的设备与些特殊的设备与虚拟物体进行交虚拟物体进行交互操作。互操作。(6 6)虚拟现实)虚拟现实