计算机图形学消隐.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文档。上传文档
查看更多
计算机图形学消隐

消隐 消隐 1 概述 2 线消隐 3 提高消隐算法的效率 4 面消隐 1 概述 什么叫做“消隐”?为什么要进行“消隐”? 将三维场景绘制在计算机二维显示屏上必须经过投影变换,投影变换将三维信息变换到二维平面上,这个过程中深度信息被丢失,生成的图形往往具有二义性。 要消除二义性,就必须在绘制时消除被遮挡的不可见的线或面,习惯上称作消除隐藏线和隐藏面,简称为“消隐”。 经过消隐得到的投影图称为物体的“真实”图形。 通过消隐,也可降低光照、纹理等算法的计算量。 1 概述 消隐的对象是三维物体。 三维物体的表示主要有B-Rep和CSG表示。 在进行绘制时,消隐的对象是多边形网格模型。 消隐结果与被观察物体有关,也与视点、视方向有关。 1 概述 消隐算法的实现空间: 消隐算法可以在对象空间或图像空间中实现。对象空间算法是在定义对象的坐标系中实现的,而图像空间算法是在对象显示的屏幕坐标系中实现的。 1 概述 消隐算法的实现空间: 对象空间算法以尽可能高的精度完成几何计算,所以可以把图像放大许多倍而不致损害其准确性; 图像空间算法只能以与显示屏的分辨率相适应的精度来完成计算,所以其图像的放大效果较差。 另外,这两类算法的性能特性也是不同的。对象空间算法所需的计算时间随场量中物体的个数而增加;而图像空间的计算时间则随图像中可见部分的复杂程度而增加。 1 概述 消隐的分类 1. 按消隐对象分类: 线消隐 (Hidden-line): 对象:隐藏线,主要应用于早期的线框模型; 面消隐 (Hidden-surface): 对象:隐藏面,应用于面模型、实体模型,用于真实感绘制; 1 概述 2. 按消隐算法的实现空间分类: 对象空间的消隐算法 以场景中的物体为处理单元;求出所有点、边、面遮挡关系(求出物体表面的可见部分)。 Roberts算法,光线投射算法 图像空间的消隐算法 以视区内的每个像素为处理单元;对视区内每个象素进行判断,决定哪个多边形在该象素可见。 Z-buffer、扫描线、Warnock 对象空间和图像空间结合的消隐算法 在对象空间中预先计算面的可见性优先级,再在图像空间中生成消隐图。 画家算法 1 概述 消隐算法的选择: 不同的应用场合有不同的算法要求,有些算法要求速度快,有些要求图形的真实度高。例如: 快速消隐算法可用于实时模拟如飞行模拟等; 具有高度真实感图形的消隐算法可用于计算机动画等领域,所生成的图形一般具有连续色调,并能产生阴影、透明、表面纹理及反射、折射等视觉效果。不过这类算法比较慢。产生一幅图可能需要几分钟甚至几小时。 所以,在进行消隐算法的设计时,应在计算速度和图形细节之间进行权衡,任何一种算法都不能兼顾两者。 消隐 1 概述 2 线消隐 3 提高消隐算法的效率 4 面消隐 2 线消隐 隐藏线的产生是因为在给定的观察方向下,某些棱(或棱的一部分)被表面多边形遮挡,因此多面体隐藏线消除可以归结为一个根本问题: 在给定的观察方向下,给定一条空间线段和一个多边形,判断线段是否被多边形遮挡。如果遮挡,求出遮挡部分。 对造型的要求: 要求造型系统中有面的信息,最好有体的信息; 如果存在多个实体,它们互不相交; 求交的线段和面(多边形)在空间不相交; 多边形网格模型可以满足要求。 2 线消隐 多面体隐藏线消除的步骤如下: (1)将线段p1p2和多边形π投影到投影平面上得到线段p1’p2’和多边形π’; (2)计算线段p1’p2’和多边形π’各条边的交点; (3)交点将p1’p2’分成若干个子线段,特别地当交点不存在时,子线段只有一个,即p1’p2’自身。现在每个子线段上的所有点具有相同的隐藏性; (4)分别判断各个子线段的隐藏性: 2 线消隐 (4)分别判断各个子线段的隐藏性: 取子线段的中点,判断该点是否在多边形π’内: a.如不在多边形内,子线段与多边形 是分离的,不存在隐藏关系,子线段是可见的; b.如在多边形内,从子线段中点向视点引射线,如果射线与多边形 相交,求交点深度值,判断该子线段是否被多边形遮挡,否则该子线段可见。 2 线消隐 线段和一个多边形进行隐藏性判断时,涉及到的运算包括: 投影变换 平面上线段和多边形的求交 判断点是否在多边形内 空间中射线和平面求交。 如果将多面体的每条棱与每个多边形都按上面的方法消除隐藏线,那么计算量将非常大。 如何提高算法效率? 减少计算的对象。 消隐 1 概述 2 线消隐 3 提高消隐算法的效率 4 面消隐 3 提高消隐算法的效率 1. 消除自隐线、面 2. 深度测试 3. 包围盒技术 4. 利用连贯性 5. 空间分割技术 6. 物体分层表示 1. 消除自隐线、面 对于多面体的任一个面,可以根据其外法向n和视矢量E的夹角

文档评论(0)

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

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

版权声明书
用户编号:7042123103000003

1亿VIP精品文档

相关文档