CAD/CAM技术 第二章 计算机图形学基础
本章 学习目标 掌握二维图形处理技术基础知识 了解三维图形变换方法 理解图形消隐技术和光照处理技术原理 学习二维裁剪技术 重点:二维图形几何变换 难点: 投影变换
学习内容 第一节 计算机图形技术概述 第二节 图形的几何变换 第三节 图形裁剪技术 第四节 图形的消隐技术 第五节 图形的真实感
第一节 计算机图形学概述 一、 计算机图形技术的基本概念 二、计算机图形学的研究内容 图形(矢量图形 ) 图像 图形与图像的区别 第一节 计算机图形学概述 一、 计算机图形技术的基本概念 图形的种类: 图形(矢量图形 ) 图像 图形与图像的区别 二、计算机图形学的研究内容
图形——采用参数法描述的图形(矢量图形) 形状参数 : 描述图形的方程系数,线段或多边形的端点坐标等 ; 属性参数 : 灰度、色彩、线型等非几何属性。 构成图形的要素有两个: 几何要素——刻画形状的点、线、面、体… 非几何要素——反映物体表面属性或材质的明暗、灰度、色彩…
图形
图像 —采用点阵法描述的图形(点阵图形) 照片、位图、图片 存储信息:灰度 ,色彩
图像
矢量图形与图象的区别: 矢量图形可以容易缩放而不影响图形的输出质量
图像 放大前 放大后 图形
二、计算机图形学的研究内容 (1)图形的生成和表示技术 (2)图形操作与处理方法 (3)图形输出设备与输出技术 (4)图形输入设备与输入技术 (5)图形系统与支持部件 (6)图形信息的描述和表示 (7)几何模型的构造技术 (8)动画技术 (9)图形实时性和真实感 (10)图形标准与图形软件包
第二节 图形变换 图形变换指对图形的几何信息经过几何变换后产生新的图形,提出的构造或修改图形的方法 二维图形基本几何变换 三维图形的几何变换 第二节 图形变换 图形变换指对图形的几何信息经过几何变换后产生新的图形,提出的构造或修改图形的方法 除图形的位置变动外,可以将图形放大或缩小,或者对图形作不同方向的拉伸来使其扭曲变形… 图形变换基本知识 二维图形基本几何变换 二维图形的复合变换 三维图形的几何变换 投影变换
1.构成图形的基本要素及其表示方法 点和图形的表示 图形由图形的顶点坐标、顶点之间的拓扑关系以及组成图形的面和线的表达模型所决定 任何一个图形都可以认为是点之间的连线构成 对一个图形作几何变换,实际上就是对一系列点进行变换 点和图形的表示 二维平面内,一个点通常用坐标 (x , y) 来表示,矩阵形式为: 或 三角形的三个顶点坐标 a( x1, y1 ), b( x2, y2 ), c( x3, y3 ),用矩阵表示:
1.构成图形的基本要素及其表示方法 三维形体矩阵表示形式为:
2.点和图形的齐次坐标表示 当取H=1时,称为齐次坐标的规格化形式 齐次坐标是将一个n维空间的点用n+1维表示,即附加一个坐标表示 二维点[x y]的齐次坐标通常用三维坐标[Hx Hy H]表示 三维点[x y z]的齐次坐标通常用四维坐标[ Hx Hy Hz H ]表示… 齐次坐标系中,附加的坐标H称为比例因子 Hx=H×x、Hy=H×y、Hz=H×z H的取值是任意的,任何一个点可用许多组齐次坐标来表示, 如:二维点 [3 2]可表示为[3 2 1] , [6 4 2] … 当取H=1时,称为齐次坐标的规格化形式 四边形用齐次坐标可表示:
采用齐次坐标表示的主要优点: 平移、比例和旋转等变换的组合变换处理形式不统一,将很难把它们级联在一起 (1)为几何图形的二维、三维甚至高维空间的坐标变换提供统一的矩阵运算方法,并可以方便地将它们组合在一起进行组合变换 平移、比例和旋转等变换的组合变换处理形式不统一,将很难把它们级联在一起 (2)无穷远点的处理比较方便。 如,对二维的齐次坐标 [A B H],当H→0时,表示直线上 Ax+By=0 的连续点(x,y)逐渐趋近于无穷点 三维情况下,利用齐次坐标表示视点在世界坐标系原点时的投影变换
用来对原图形施行坐标变换矩阵T 称为变换矩阵 设一个几何图形的齐次坐标矩阵为A,另有一个矩阵T,则由矩阵乘法运算可得一新矩阵B: B=A•T 矩阵B是矩阵A经变换后的图形矩阵 用来对原图形施行坐标变换矩阵T 称为变换矩阵 根据矩阵运算原理,二维图形变换矩阵T为3×3阶矩阵,三维图形的变换矩阵T为4×4阶矩阵 通过矩阵的乘法可以对图形进行诸如比例、对称、旋转、平移、投影等各种变换 图形变换的主要工作就是求解变换矩阵T
二维图形的基本几何变换 二维图形几何变换主要有: 平移变换 比例变换 对称变换 旋转变换 错切变换 归纳 二维图形的复合变换
平移变换 = 图形的每一个点在给定的方向上移动相同距离所得的变换称为平移变换 图形在x轴方向的平移量为l, 在y轴方向的平移量为m, 则坐标点的平移变换: =
比例变换 图形中的每一个点以坐标原点为中心,按相同的比例进行放大或缩小所得到的变换称为比例变换 图形在x,y两个坐标方向放大或缩小比例分别为 a 和e, 则坐标点的比例变换: (1) a = e = 1时,为恒等比例变换,即图形不变 (2) a = e >1时,图形沿两个坐标轴方向等比放大 (3) a = e <1时,图形沿两个坐标轴方向等比缩小 (4) a≠e时,图形沿两个坐标轴方向进行非等比变换,称为畸变
对称变换 (1)以x轴为对称线的对称变换 变换后,图形点集的x坐标值不变, y坐标值不变,符号相反
(2)以Y轴为对称线的对称变换 变换后,图形点集的y坐标值不变, x坐标值不变,符号相反
(3) 以原点为对称的对称变换 变换后,图形点集的x和y坐标值不变,符号均相反
(4)以直线y=x为对称线的对称变换 (5)以直线y=-x为对称线的对称变换 变换后,图形点集的x和y坐标对调
旋转变换 绕原点逆时针旋转θ角的数学表达式为: X’=XCOSθ-YSINθ Y’=YCOSθ+XSINθ 旋转变换是将图形绕固定点顺时针或逆时针方向进行旋转 规定: 逆时针方向为正,顺时针方向为负 图形绕原点沿逆时针方向旋转θ角,变换后的点(x* , y*)的数学表达式:
错切变换 错切变换是图形的每一个点在某一方向上坐标保持不变,而另一坐标方向上坐标进行线性变换,或都进行线性变换 有x和y方向的错切变换 图形的 y 坐标不变,x 坐标随坐标(x y)和系数 b 作线性变化,b≠0 b>0,图形沿+x方向错切; b<0,图形沿-x方向错切
错切变换 错切变换是图形的每一个点在某一方向上坐标保持不变,而另一坐标方向上坐标进行线性变换,或都进行线性变换 有x和y方向的错切变换 图形的 x 坐标不变,y 坐标随坐标(x y)和系数 d 作线性变化,d≠0 d>0,图形沿 +y 方向错切; d<0,图形沿 –y 方向错切
二维图形基本变换小结: T = 从二维图形的基本几何变换可见,各种图形变换完全取决于变换矩阵中各元素的取值 按照变换矩阵中各元素的功能,可将二维变换矩阵的一般表达式按如下虚线分为4个子矩阵: 实现图形透视变换(常用于三维图形) 实现图形比例、对称、错切、旋转变换 T = 实现图形比例变换: s>1, 图形等比例缩小 0<s<1,图形等比例放大 s=1, 图形大小不变 实现图形平移变换
二维图形的复合变换 CAD/CAM中的图形变换比较复杂,往往仅用一种基本变换不能实现,需经由两种或多种基本变换的组合才能得所需的最终图形。这种由两个以上基本变换构成的变换称为复合变换(组合变换)或基本变换的级联 设各次变换的矩阵分别为T1 ,T2 ,…… ,Tn,则复合变换的矩阵是各次变换矩阵的乘积,即: T=T1 •T2 …… • Tn 组合变换中,多个变换矩阵之积称为组合变换矩阵 先旋转后平移 先平移后旋转
复合变换例1: 基本步骤: (1)平移 (2)旋转 (3)平移 求三角形以点(4, 6)为中心逆时针旋转30°的组合变换矩阵 相对于 (e, f ) 点作旋转变换,由以下三个矩阵相乘来实现:
复合变换例2: 图形对于任一条线 y=ax+b 对称的组合变换矩阵 基本步骤: (1)平移 (2)旋转 (3)对称 (4)旋转 (5)平移
三维图形几何变换 三维图形的基本几何变换主要有: 平移变换 比例变换 对称变换 旋转变换 错切变换 归纳 三维图形的几何变换是二维图形几何变换的简单扩展 与二维图形一样,用适当的变换矩阵也可以对三维图形进行各种几何变换 三维图形的基本几何变换主要有: 平移变换 比例变换 对称变换 旋转变换 错切变换 归纳
平移变换 平移变换是使立体在三维空间移动一个位置,而形状保持不变 其中L、M、N分别为 X、Y、Z方向的平移量
比例变换 空间立体顶点坐标按规定比例放大或缩小称三维比例变换 比例变换两种变换形式: 对于整体图形进行缩放 沿各坐标轴分别调节每个坐标方向上的大小 沿每个坐标轴方向分别调节各坐标大小的比例变换齐次矩阵: 变换方程:
对称变换 标准三维空间对称变换是相对于坐标平面进行 对X0Z平面的对称变换
对称变换 标准的三维空间对称变换是相对于坐标平面进行 对X0Y平面的对称变换 变换后点的坐标: = 对Y0Z平面的对称变换
旋转变换 三维旋转变换是将空间立体绕坐标轴旋转一个角度,且角的正负按右手定则确定:右手大拇指指向旋转轴的正向,其余四个手指的指向即为角的正向 y x z z’ y’ o x轴指向纸外 二维变换中,图形绕原点旋转的变换实际上是X0Y平面图形绕Z轴旋转的变换 1)绕X轴旋转的变换矩阵 空间立体绕x轴旋转各顶点的x坐标不变,只是 y和 z坐标发生变化
空间立体绕y轴旋转各顶点的y坐标不变,只是 x和 z坐标发生变化 o y轴指向纸外 2)绕Y轴旋转的变换矩阵 空间立体绕y轴旋转各顶点的y坐标不变,只是 x和 z坐标发生变化 3)绕Z轴旋转的变换矩阵 空间立体绕z轴旋转各顶点的Z坐标不变,只是 x和 y坐标发生变化
错切变换 Tsh= 变换后点坐标: = = 错切变换是指空间立体沿x、y、z三个方向都产生错变形。错切变形是画轴测图的基础,其变换矩阵为: 三维错切变换 z y x 沿z含x错切 沿z含y错切 沿y含x错切 沿y含z错切 沿x含y错切 沿x含z错切 Tsh= 变换后点坐标: = =
沿X轴含Y向错切 沿X轴含Y向错切变换矩阵为: 错切变换为: 即 x’=x+dy y’=y z’=z
三维图形基本变换总结: 对三维空间的点如(x,y,z),可用齐次坐标表示为:(x,y,z,1),或(X,Y,Z,H) 因此,三维空间里的点的变换可写为: 其中[M]是4X4阶变换矩阵,即:
四.投影变换 投影变换的基本概念 投影变换的分类:
投影的要素 包括投影对象、投影中心、投影平面、投影线和投影。要作投影变换的物体称为投影对象;在三维空间中,选择一个点,记这个点为投影中心;不经过这个点再定义一个平面,记这个平面为投影平面;从投影中心向投影平面引任意多条射线,记这些射线为投影线;穿过物体的投影线与投影面相交,在投影面上形成物体的像,这个像记为三维物体在二维投影面上的。
投影变换可分为两大类:透视投影和平行投影。它们的本质区别在于:透视投影的投影中心到投影面之间的距离是有限的,而平行投影的投影中心到投影面之间的距离是无限的。
1.正平行投影变换
1)主视图 主视图是沿着Z向向V面投影的视图,如图b所示,它是将空间物体沿Z向压缩而得,因此需要将物体的坐标乘压缩矩阵。
2) 俯视图 俯视图是将空间物体先沿X向压缩,然后绕Y轴顺时针旋转90度,为了与主视图间保持一定的距离,最后沿X的负向平移M。组合矩阵为:
3)左视图 左视图是将空间物体先沿Y向压缩,然后绕X轴逆时针旋转90度,为了与主视图间保持一定的距离,最后沿Y的负向平移M。组合矩阵为:
2.透视投影变换 透视投影的术语和分类 透视投影的投影中心与投影平面之间的距离为有限的。投影线(视线)从投影中心(视点)出发,投影线是不平行的。 对于透视投影,一束平行于投影平面的平行线的投影仍可保持平行,而不平行于投影平面的平行线的投影会收敛到一个点,这个点称为灭点(Vanishing Point)。 平行于坐标轴的平行线在投影平面上形成的灭点称为主灭点。
透视投影的种类 根据主灭点的个数,可分为一点透视、二点透视和三点透视。 (1)一点透视:有一个主灭点,即投影平面与一个坐标轴正交,与另外两个坐标轴平行。 (2)二点透视:有两个主灭点,即投影平面与两个坐标轴相交,与另一个坐标轴平行。 (3)三点透视:有三个主灭点,即投影面与三个坐标轴都相交。
当变换矩阵最后一列不为零时,即可产生透视效果。其变换为: 以上变换仍是三维空间到三维空间的透视变换。当P、Q、R三个元素中,只有一个元素不为零时,可以得到一点透视;当只有一个元素为零时为两点透视;当均不为零时,为三点透视。
第三节 图形裁剪技术 一、窗口-视区变换 1.坐标系 2.图形的输出 二、裁剪技术
坐标系统 世界坐标系(WC) 设备坐标系(DC) 观察坐标系 规格化设备坐标系(NDC) 从定义一个零件的几何外形到图形设备上生成相应图形,需要建立相应的坐标系统来描述,并通过坐标变换来实现图形的表达 实物物体所处空间中(二维或三维空间)用以协助用户定义图形所表达物体几何尺寸的坐标系,也称用户坐标系,多用右手直角坐标系 世界坐标系(WC) O X Y O X Y Z 设备坐标系(DC) 观察坐标系 规格化设备坐标系(NDC)
坐标系统 世界坐标系(WC) 设备坐标系(DC) 观察坐标系 规格化设备坐标系(NDC) 从定义一个零件的几何外形到图形设备上生成相应图形,通常需要建立相应的坐标系统来描述,并通过坐标变换来实现图形的表达 与图形输出设备相关联,用以定义图形几何尺寸及位置的坐标系,也称物理坐标系 设备坐标系是一个二维平面坐标系,通常使用左手直角坐标系 度量单位:象素(显示器)或步长(绘图仪) 世界坐标系(WC) 设备坐标系(DC) O X Y (显示器) 观察坐标系 规格化设备坐标系(NDC)
坐标系统 世界坐标系(WC) 设备坐标系(DC) 观察坐标系 规格化设备坐标系(NDC) 从定义一个零件的几何外形到图形设备上生成相应图形,通常需要建立相应的坐标系统来描述,并通过坐标变换来实现图形的表达 观察坐标系一是用于指定裁剪空间,确定物体要显示输出的部分;二是用来通过在观察坐标系中定义观察平面,把三维物体的用户坐标系变换为规格化设备坐标系,它可以定义在用户坐标系中的任何位置,是一个符合左手定则的直角坐标系 世界坐标系(WC) 设备坐标系(DC) O X Y (显示器) 观察坐标系 规格化设备坐标系(NDC)
坐标系统 世界坐标系(WC) 设备坐标系(DC) 观察坐标系 规格化设备坐标系(NDC) 从定义一个零件的几何外形到图形设备上生成相应图形,通常需要建立相应的坐标系统来描述,并通过坐标变换来实现图形的表达。 人为规定的假想设备坐标系,与设备无关 规格化设备坐标系坐标轴方向及原点与设备坐标系相同,但其最大工作范围的坐标值规范化为1 既定图形输出设备的规格化设备坐标系与设备坐标系相差一个固定倍数,即相差该设备的分辨率 图形软件与图形设备隔离开,增加了图形软件的可移植性 世界坐标系(WC) 设备坐标系(DC) 观察坐标系 规格化设备坐标系(NDC)
窗口-视区变换 窗口:用户坐标系(世界坐标系)中定义的确定显示内容的一个矩形区域 工程设计中,需要突出图形的某一部分而用一个局部视图单独画出来。改变窗口的大小、位置和比例,用户可以方便地观察局部图形,控制图形的大小 用矩形左下角点坐标(XW1,YW1)和右上角点坐标(XW2,YW2)确定窗口的大小和位置,在这个区域内的图形在设备坐标系下输出,窗口外的部分则被裁掉 (XW2,YW2) (XW1,YW1)
窗口-视区变换 视区:设备坐标系(通常是图形显示器)中定义的一个用于输出所要显示的图形和文字的矩形区域 若将窗口中的图形显示在屏幕视区范围内,则视区决定了窗口内的图形在屏幕上显示的位置和大小 一个屏幕上定义四个视区,同时输出一个鼠标的三视图和轴测图
窗口-视区变换 窗口和视区是在不同的坐标系中定义的,窗口中的图形信息送到视区输出前,需进行坐标变换,即把用户坐标系的坐标值转化为设备(屏幕)坐标系的坐标值,此变换即窗口—视区变换 (XV, YV) 视区 窗口 (XW, YW) (XV1, YV1) (XV2, YV2) (Xw1, Yw1) (Xw2, Yw2) Y o x XV = XV1 + (XW -XW 1) YV = YV1 + (YW -YW1) XW = XW1+ (XV-XV1) YW = YW1 + (YV-YV1)
打印选择的窗口区
打印预览看到的效果
图形裁剪技术 实际应用中,面对一幅大的画面,常要求开一个矩形窗口显示指定的部分画面。窗口内的图形被显示出来,而窗口之外的图形则被裁剪掉,使图形恰当地显示到屏幕上的处理技术称为裁剪技术 任何图形在显示之前都要经过裁剪工作 将三维物体的图形由图形输出设备显示或绘制时,往往也要用到裁剪技术 三维窗口在平行投影时为立方体。三维线段裁剪就是要显示三维线段落在三维窗口内的部分 二维裁剪技术 三维裁剪技术
二维裁剪技术 裁剪处理关键: 点在裁剪区域内外的判断 图形与裁剪区域边界交点的计算 用户在平面上定义一个窗口以后,总希望把落在窗口内的部分图形映象到视图区中,而把在窗口以外的图形运用裁剪方法统统裁掉,不予输出 平面上的图形受该平面上的矩形窗口的裁剪称为二维裁剪 裁剪处理关键: 点在裁剪区域内外的判断 图形与裁剪区域边界交点的计算 常见算法:编码算法、中点分割法、 Liang-Barsky裁剪算法…
编码裁剪算法 主要思想:用编码方法来实现裁剪 特点:对显然不可见线段的快速判别 编码方法:由窗口四条边所在直线把二维平面分成9个区域,每个区域赋予一个四位编码,Ct Cb Cr Cl,上下右左 算法步骤: 判别线段两端点是否都落在窗口内,如果是,则线段完全可见;否则进入第二步; 判别线段是否为显然不可见,如果是,则裁剪结束;否则进行第三步; 求线段与窗口边延长线的交点,这个交点将线段分为两段,其中一段显然不可见,丢弃。对余下的另一段重新进行第一步,第二步判断,直至结束 1000 0001 0010 0000 0100 1001 0101 0110 1010 窗口 b c a 1974年,Dan Cohen和Ivan Sutherland提出,也称科恩—萨赛兰德算法
Cohen-Sutherland 直线裁剪算法小结 本算法的优点:简单,易于实现。 速度:求交点是很重要的。影响速度。 缺点:只对矩形有效。
多边形裁剪法
第四节 图形消隐技术 ? ? 图形消隐的基本概念 消隐分类 常用的消隐算法 下面图形代表哪一种情况呢? 第四节 图形消隐技术 三维图形由于投影变换失去了深度信息,往往导致图形的二义性 下面图形代表哪一种情况呢? ? ? 图形消隐的基本概念 消隐分类 常用的消隐算法
图形消隐的基本概念 当沿投影视线观察一个三维物体时,由于物体中各种表面或其它物体的遮挡,某些线段或面不可见,这些不可见的线段或面称为隐藏线或隐藏面 要消除二义性,就必须在绘制时消除实际不可见的线和面,习惯上将这些隐藏线或隐藏面消除的过程称为消隐 查找、确定并消除隐藏线和隐藏面的技术称为消隐技术
消隐分类 物空间算法 像空间算法 在对象定义时所处的坐标系中实现。 这种方法把物体和物体的某些部分彼此比较,通过有关几何运算,以确定哪些线或表面是不可见的.然后仅显示可见线,以此实现消隐, 算法精度较高,生成的图形可以放大多倍而仍然令人满意,适用于精密的工程应用领域 物空间算法 像空间算法
消隐分类 物空间算法 像空间算法 针对形体的图形,确定光栅显示器哪些像素应该可见。该算法是以与显示器分辨率相适应的精度来进行的,尽管算法不够精确,但对于复杂图形的消隐,运算效率较高
常用的消隐算法 的种类 根据消隐对象不同,消隐算法分为两类: 若消除的是物体上不可见的线段,称线消隐 根据消隐空间的不同,消隐算法分为两类: 若消除的是物体上不可见的面,称面消隐 根据消隐空间的不同,消隐算法分为两类: 物体(物)空间的消隐算法 侧重于景中各物体之间的几何关系。直接在视点坐标系中确定视点不可见的表面区域,将它们表达成同原表面一致的数据结构。 图形(像)空间的消隐算法 侧重于向屏幕投影后形成的图像。在投影屏幕上以屏幕像素为采样单位,确定投影于每一像素的可见景物表面区域,将其颜色作为该像素的显示光亮度。 如:油画算法 、 Z-Buffer算法、扫描线算法 Warnock算法…
物体(物)空间的消隐算法 平面公式法 径向预排序法 径向排序法 隔离平面法 深度排序法
平面公式法 通过对物体进行适当旋转和平移后,可将物体变换到以观察点为原点的观察坐标系中,如果在观察坐标系中求得了平面的方程Ax +By + Cz +D =0,将观察点坐标代入上面的判断准则,则可得出如下的简单判据: a)D > 0,则平面不可见,应被隐藏; b)D < 0,则平面是可见面,应被画出。 只能用于凸面体的消隐,而不适用于凹面体消隐
径向预排序法 径向预排序法消隐的要点是,先对物体及物体的表面进行由远及近的排序,对具有相同角位置的物体或表面,先画较远的,后画较近的,这样如果较近的物体或表面挡住了较远的物体或表面,则被遮挡的部分被覆盖而实现消隐。但对具有不同角位置的物体或表面,先画哪一个可根据需要来决定。
径向排序法 径向排序法是对径向预排序法的改进算法, 实现对模型的旋转变换,以便能从不同的角度来观察物体。
隔离平面法 主要用于多个物体之间 其基础是平面公式法。 基本原理:建立一个虚拟平面,并根据平面公式法判断出两个物体分别位于该平面的哪一侧,以及该平面的哪一侧朝向观察点,则可以推论得到位于平面朝向观察点一侧的物体离观察点较近,将遮挡位于平面背向观察点一侧的物体。
深度排序法 注意:需要深度信息和绘图顺序 主要用于多个物体之间 其基础是平面公式法。 P2 Z P12 F2 P1 F1 O X Y 深度排序法 主要用于多个物体之间 其基础是平面公式法。 基本原理:比较不同物体或表面的表示远近的z坐标,在观察点位于原点的观察坐标系中, | z |值越大的物体或表面离观察点越远,被消隐的可能性越大,应先画出; | z |值越小的物体或表面离观察点越近,将可能遮挡较远的物体或表面,应后画出。 注意:需要深度信息和绘图顺序
图形(像)(image space)空间的消隐算法 油画算法 基本思想: 1.将屏幕置成背景色一个象素 2.将物体的各表面按其离视点的远近排序 3.由远及近地绘制物体的各表面,同时也消除了隐藏面 优点:简单易行,可作为实现复杂算法的基础用缺点:平画相交或重叠时候,无法真确排序
图形(像)(image space)空间的消隐算法 基本思想: 将投影到显示屏上的每一个象素所对应的多边形表面的深度进行比较,取最靠近视点的表面的属性值作为该像素的属性值 用Z—buffer记录该表面在该像素点的深度 用frame—buffer记录该表面在该像素点的颜色或亮度值 Catmull在1975年提出该算法,适用于正投影时的消隐处理
图形(像)(image space)空间的消隐算法 基本思想:在图像空间中按扫描线从上到下的顺序来处理所显示的对象,将三维问题简化成二维问题 缺点 在每一个被多边形覆盖像素处需要计算深度值 被多个多边形覆盖的像素需要多次计算深度值
图形(像)空间(image space)的消隐算法 基本思想: 观察整个窗口区域 判别窗口是否单纯 窗口内无任何可见物体 窗口已被一个可见面片完全充满 将非单纯的窗口四等分为四个子窗口 对每个子窗口再进一步判别是否单纯 直到窗口单纯或窗口边长已缩至一个象素点为止 即使1024×1024分辨率视图被细分10次后,也能使每个子窗口覆盖一个像素 分离 内含 相交 包围
第五节. 图形的光照处理技术 光照处理的基本原理 光照处理的基本算法 阴影的处理 光照处理方法是对真实世界的一种近似模拟 采用消隐技术消除了隐藏线和隐藏面后,图形没有了二义性问题,但要创造真实感图形需要光照处理技术。 光照处理是绘制真实感图形所需的重要技术之一 光照处理的基本原理 光照处理的基本算法 阴影的处理
光照处理的基本原理 光照处理目的是希望光照射在物体上模拟眼睛看物体的效果 光的亮度由光的强度决定,光的颜色由波长决定 物体吸收某些波长的光,而反射或折射其它波长的光,则物体呈现某种颜色。 从物体表面反射或折射出来的光的强度取决于光源的性质、物体的表面性质、周围环境、视点位置以及不同人对光的感觉差异等诸多因素。 对物体进行光照处理需要建立合适的光照模型,并通过显示算法将物体在显示器上显示出来。
简单的光照模型 光源发光照射在物体上,然后传递到人的眼里,实际上构成了一个光照系统 光照处理模型常通过点光源照射物体说明: 点光源的几何形状为一个点,位于空间的某个位置向周围所有方向上辐射等强度光 在点光源的照射下,物体表面的不同部分亮度不同,亮度的大小依赖于它的朝向以及它与点光源之间的距离 理想镜面反射 L N P R V 一般光滑表面镜面反射 L N P R L N P R 粗糙表面镜面反射
简单的光照模型 漫反射 镜面反射 环境光 光照处理是模拟光线照射在物体上,物体反映出来的感观效应,通过必要的算法实现实际物体在计算机上的虚拟 光滑的物体表面(如金属、塑料)在点光源的照射下会形成一块特别亮的区域,即所谓的“高光”,它是物体表面对入射光进行镜面反射引起的 镜面反射遵循反射定律,反射光与入射光位于表面法向两侧。镜面反射的光强取决于入射光的角度、波长和反射表面的材料性质… 漫反射 镜面反射 环境光
简单的光照模型 漫反射 光照处理是模拟光线照射在物体上,物体反映出来的感观效应,通过必要的算法实现实际物体在计算机上的虚拟 光线照射到表面粗糙、无光泽的物体上,物体表面表现为漫反射形式,即光线沿各不同方向都做相同的散射。 从各个角度观察,物体都有相同的亮度 式中Ks是与物体有关的镜面反射系数, 为视线方向V与反射方向R的夹角,n为反射指数
简单的光照模型 镜面反射 光照处理是模拟光线照射在物体上,物体反映出来的感观效应,通过必要的算法实现实际物体在计算机上的虚拟 式中: Id——漫反射的亮度; IP——点光源的亮度; Kd——漫反射系数; θ——入射角。 镜面反射
简单的光照模型 环境光 光照处理是模拟光线照射在物体上,物体反映出来的感观效应,通过必要的算法实现实际物体在计算机上的虚拟 Ie=Ia·Ka 光线在场景中经过复杂的传播之后,形成弥漫于整个空间的光线,称为环境光(或泛光 )。 环境光使没有光源的直接照射的景物表面仍有一定的亮度而可见。 环境光在空间中近似地均匀分布,即在任何位置、任何方向上,强度都一样。环境光通常由多个物体经多重反射形成,因而无法精确地计算光强。 Ie=Ia·Ka 式中Ie为物体表面所呈现的亮度,Ia为环境光的光强,Ka为物体对环境光的反射系数 环境光
光照效果: 反射 地面 背景 石头 墙面 纹理 六边形 圆环 金属 方锥 光滑 球体 平面漫反射 圆柱体 材质效果 物件
光照处理的基本算法 1.恒定亮度法 2.Gouraud插值法 弯曲表面物体,可以用其曲面方程算出每点的法线,然后按光照强度的计算模型计算每一点的亮度进行表达 问题:1. 运算量相当大 2. 很多曲面无法用合适的方程表示 通常仍然用多面体来逼近的方法模拟曲面物体 平面多面体表面上各点亮度计算通常用二种基本算法: 整个多边形只算出一个单独的亮度值,用这个亮度显示物体上多边形所在的那个面 这种方法只适合在特定条件: 1. 考虑点光源照射时,总假定点光源和观察点离物体表面足够远 2. 物体表面仅暴露于背景光下,没有表面图案、纹理或者阴影时,才会产生准确的结果 1.恒定亮度法 2.Gouraud插值法
阴影的处理 阴影一般由两部分组成:本影和半影 本影:任何光线都照不到的区域,呈现为全黑的、轮廓分明的区域 阴影是由于物体遮挡光源的光线而形成的,有助于显示画面中各物体之间的空间位置及深度关系,使人感到物体的远近深浅,极大增加画面的真实感。 阴影一般由两部分组成:本影和半影 本 半 区 影 无 光源 本影:任何光线都照不到的区域,呈现为全黑的、轮廓分明的区域 半影: 可接收到分布光源照射的部分光线的区域,通常位于本影周围,呈现为半明半暗的区域,受到的光照依次增加
自身阴影和投射阴影 本影包括两类:自身阴影和投射阴影 自身阴影:由于物体自身遮挡而使光线照射不到的某些面,它与视点在光源位置时的自隐藏面一致 投射阴影:物体遮挡光线从而使画面中位于它后面的物体或区域(如基平面)的全部或一部分受不到光的照射而形成