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