计算机图形学-10、隐藏面的消除.pptVIP

  1. 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
计算机图形学-10、隐藏面的消除

3.画家算法 1 2 3 4 1 2 4 3 优先级表 绘图顺序 视线方向 u v n 3.画家算法 用三维包围盒确定能够投影到窗口的空间范围,除去包围盒以外的物体。 每个物体去除后向面,只剩下前向面,每个前向面用多边形顶点表示。 画家算法的关键和难点在于如何对多边形按远近进行排序。 3.画家算法 每个多边形顶点中,最大的纵坐标z值用zmax表示, 最小的纵坐标n值用zmin表示; 根据每个多边形的zmin对它们进行预排序,并放入优先级表中;这样大部分多边形都是按照远近关系得到排序,但有少量特例例外。 例外 视线 n 3.画家算法 为了排除例外,需要逐个判断多边形之间的远近关系。 设P是在优先级表中排列第一的多边形,Q为任意一个其他多边形。 Q与P进行比较。 3.画家算法 若zmax(P)zmin(Q) , P确实是比Q距离视线更远。 Q在P的前向面, P确实是比Q距离视线更远。 Q在P的后向面, P比Q距离视线更近,需要交换P、Q的位置。 视线 z轴 zmin(Q) zmax(P) 视线 前向 后向 3.画家算法 前、后向面判别方法: 平面上任意一点与另一平面任意顶点作一连线,平面的法线矢量与该连线的夹角小于90度,那个平面位于该平面的前向面一边;否则位于后向面一边。 平面法矢 4.Z缓冲器算法 画家算法需要对多边形排序,计算量大 Z缓冲器算法简单稳定,利于硬件实现。 Z缓冲器是一组存储单元,其单元个数与屏幕上的像素个数相同,与帧缓冲器(显存)单元个数相同。它们三者存在一一对应的关系。 4.Z缓冲器算法 Z缓冲器算法为每一个要填入的像素,不光准备颜色值,还准备一个深度值。 屏幕上像素的显示颜色由对应的帧缓冲器单元中的数值决定,该像素对应的z值存储在Z缓冲器对应单元中。 有多个空间物体对应同一个显示像素。一个颜色值是否能填入显示缓冲器像素,取决于该颜色值所对应的深度值是否大于当前缓冲器中的深度值。 4.Z缓冲器算法 视线方向 u v n 深度值的获取: 由多边形的任意三个顶点,可以确定平面方程; 将多边形投影到投影平面,并着色; 在着色的过程中可以确定多边形的每一个内点坐标; 由内点坐标和平面方程可以确定内点对应的纵坐标(深度值)。 4.Z缓冲器算法 Z缓冲器算法的缺点是需要太多的缓冲存储空间,要准备一个与屏幕像素对应的深度Z值存储空间。 对于当前的计算机(或显卡),不成问题。但在该算法提出的当年,是一个大问题。 当时为了克服这一问题,提出了扫描线Z缓冲器算法。 5.扫描线Z缓冲器算法 Z缓冲器算法的缺点是需要很大的Z缓冲器;每一点处都需要计算它的纵坐标值,计算量大。 为了克服第一个缺点,可以把整个显示平面分成若干个区域,一区一区来显示,这样Z缓冲器的单元数只要等于一个区域的像素个数。 如果把区域变成显示屏幕的一行,就得到扫描线Z缓冲器算法。 5.扫描线Z缓冲器算法 缓冲区由区域变成水平扫描线,问题发生质的变化: 使用一个多边形表(PT)对所有的多边形排序、分类; 使用一个活化多边形表(APT)列出与当前扫描线相交的多边形; 为每个多边形建立一个边表(ET); 使用一个活化边表(AEPT)列出与当前扫描线相交的边对。 5.扫描线Z缓冲器算法 将这些数据结构组织起来,可以快速地确定每个像素的深度值,从而确定像素的颜色值。 思路与多边形的扫描转换类似,但因为有多个多边形存在,复杂得多。 6.区域子分算法 显示窗口与投影多边形的四种关系: 多边形包围了窗口; 多边形与窗口相交; 窗口包围了多边形; 窗口与多边形分离。 1 2 3 4 6.区域子分算法 所有的多边形与窗口的关系确定以后,有些情况下就可以确定颜色了: 所有多边形与窗口分离,窗口填上背景色; 6.区域子分算法 只有一个多边形与窗口相交或包含在窗口内,先对窗口填上背景色,再运用多边形扫描线方法对多边形内部填上该多边形的颜色; 6.区域子分算法 离观测者最近的多边形包围了窗口,对窗口填上该多边形的颜色。 6.区域子分算法 只有满足上述三种情况,我们才能够处理。除此之外,我们无能为力。 6.区域子分算法 区域子分算法的处理方法是,将窗口一分为四,再判断每个子窗口与多边形的关系。这样,一些多边形与子窗口的关系成为上述三种关系中的一种。 6.区域子分算法 如果子窗口与多边形的关系还不能满足三种情况之一,再将该窗口一分为四。如此重复,直到所有的子窗口与多边形的关系能满足三种情况之一为止。 6.区域子分算法 经过若干次划分,窗口的宽度与一个像素的宽度一样了,可以按照第三种情况处理了。 由于窗口宽度一次减少一半,很快就能达到一个像素的宽度。 第九章 真实图形 三维世界中的物体之间存在遮挡关系。 为了真实表现三维场景,必须体现出这种遮挡关系。 三维物体的三种模型:线框模型,表面

文档评论(0)

zijingling + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档