计算机图形学第八章.pptVIP

  1. 1、本文档共10页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第八章 隐藏面和隐藏线的消除 问题的提出 消隐算法的两点假设 假定投影平面是OXY平面,投影方向是-Z轴方向。 讨论的景物是不能互相贯穿,不能有循环遮挡的情况。 如果不满足第一个条件可以通过各种变换方法把投影平面转换成OXY平面或把投影方向转换成-Z轴方向。 多面体的隐藏线的消除 预测多面体哪些棱肯定不相交的方法 1)区分前向面和后向面的方法 2)投影的边界盒法 预测多面体哪些棱肯定不相交的方法 1)区分前向面和后向面的方法 2)边界盒法 前向面与后向面 前向面是指内法线方向背向视点的面。 ABCD,ADHE,DCGH都是前向面。 其余的面都是后向面。 前向面后向面判断法的算法思想 多面体中的面可以分为前向面和后向面,后向面总是看不见的,不会仅由于后向面的遮挡,而使别的棱成为不可见。 所以可以去除所有的后向面,然后对剩下的面中的线段求交点。 前向面后向面判断法的算法假设 假设多边形F的顶点为V1, V2… VL。 顶点Vi的坐标为(xi,yi,zi),顶点次序要求是使观察者沿着V1-V2-…-VL走时,多面体的内部始终在其右侧。 此方法的关键是如何判断出前向面或后向面 判断后向面的方法:计算多边形在OXY平面上投影的有向面积。有向面积sp的计算表达式为: 如果计算出sp≥ 0,那该面就是后向面。 实际计算中的sp表达式 这么做的目的是为了消除舍入误差的影响。 预测多面体哪些棱肯定不相交的方法 1)区分前向面和后向面的方法 2)投影的边界盒法 边界盒的定义 假设Vi在oxy平面上的投影为Qi,它的坐标记作(xi, yi)。线段Q1Q2的边界盒是以下面四点形成的矩形。 边界盒不相交的定义 如果有两个边界盒: 若满足: 就称这两个边界盒不相交。 投影的边界盒法的算法思想 算法思想:考察包含两条棱投影的边界盒,如果这两个边界盒不相交,那么这两条线段的投影就肯定不会相交;从而这两条棱不相交。 投影的边界盒法的注意点 边界盒不相交只是两条线段不相交的充分条件。不相交的两条线段的边界盒也有可能重合。 边界盒法的推广 若不对三维线段投影后采用二维的边界盒法,可以对三维线段直接应用三维的边界盒法。 三维的边界盒算法 要用六个参数: 来确定一个三维的边界盒,如果满足 则可知道这两个体在oxy平面上的投影肯定不相交(从z正向来看),所以i=1的物体不会被i=2的物体所遮挡。 如何实际应用三维边界盒算法 用边界盒来排除相交情况时要按体、面、线的次序来进行。 如果两个多面体不相交,则不同多面体上的两个多边形也不会相交。 如果两个多边形不相交,则在这两个多边形上的两条边也不相交。 三维的边界盒算法的具体实施 三维的边界盒算法的具体实施 确定线段Vi Vj上的可见部分时会出现的几种情况 若Vi 和Vj都在多边形靠观察者的一侧,则Vi Vj完全可见。 不然,就把Vi Vj和多边形的边界投影到oxy平面,求出投影之间的交点。对于交点对应点在多边形前面的才要保留。 确定线段Vi Vj上的可见部分时会出现的几种情况 如果投影间没有交点,则要判断Vi Vj是否全在多边形内部,若在,则可能Vi Vj完全不可见。 在上述过程中需要解决的几个问题 如何判断一个点是在多边形的前还是后 如何求oxy平面上投影的交点 如何判断投影点在多边形投影的外还是内 需要解决的几个问题 如何判断一个点是在多边形的前还是后 如何求oxy平面上投影的交点 如何判断投影点在多边形投影的外还是内 如何判断点在多边形前还是后 假设多边形的顶点为 ,其坐标为 ,i=1,2,…L。任取三个不在一直线上的顶点。设为 ,则这多边形所在平面方程为: 如何判断点在多边形前还是后 即: 其中: 设点Vj的坐标为(xj,yj,zj),代入上式z(x,y) 。若z(xj,yj)zj,则Vj在多边形所在平面的前面,否则认为Vj在多边形所在平面的后面。 需要解决的几个问题 如何判断一个点是在多边形的前还是后 如何求oxy平面上投影的交点 如何判断投影点在多边形投影的外还是内 如何求oxy平面上投影的交点 Vi Vj的投影线段用参数方程表示为: 多边形上任一边 的投影用 对应的变量x,y分别相等,求出l和t。 解方程的结果 其中 只有当 时线段 和线段Vi Vj在oxy平面上的投影才有交点。 结果的细节处理 为了避免舍入误差,可以把条件放宽为 是很小的正数,比如可以取为0. 001。 可以知道 当 时,QiQj由多边形外进入多边形内,当 时,则相反。 结果的细节处理 判断

文档评论(0)

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

分享好文档!

1亿VIP精品文档

相关文档