计算机图形学第四章.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文档。上传文档
查看更多
第四章 变 换 本章主要讲解内容 一个简单的图形软件包 平移、缩放、旋转、剪切等三维变换 从三维物体到二维图形所必须经过的投影变换 图形的几个不同的显示流程 二维和三维裁剪算法 一个简单的图形软件包 三维图形的显示流程 世界坐标系:在被显示的对象所在的空间中定义的一个坐标系。 屏幕坐标系:在图形显示器上或在绘图仪上定义的一个二维直角坐标系。 窗口:在投影平面内,指定要显示的内容。 视区:在显示屏幕或绘图纸上指定显示的位置。 三维图形的显示流程 三维几何变换 以下变换前的坐标为(x,y,z); 变换后的坐标为(x`,y`,z`)。 平移变换 缩放变换 旋转变换 绕空间任一轴旋转的基本思想 建立一个新坐标系 ,使得 指向旋转轴。 找出新坐标系与老坐标系之间的变换矩阵。 在新坐标系中按 轴旋转所要求的角度,最后把坐标从新坐标系变换回老坐标系。 剪切 令 s=tgα,则 齐次坐标 可以采用升维的方法使平移变换和其他变换统一起来。 进行变换次序不同,结果也不同 图形模式和空间模式的区别 投影 两种投影的图示 透视投影 一点透视、两点透视和三点透视 灭点:物体上任何一束不平行于投影平面的平行线的透视投影将会聚成的一点。 总能得到多点透视吗? 法线方向为(0,0,1) 投影平面是任意平面的情况 建立一个新坐标系 ,使得 指向投影平面的法线方向。 找出新坐标系与老坐标系之间的变换矩阵。 在新坐标系中按 作为投影平面进行投影,最后把坐标从新坐标系变换回老坐标系。 投影平面是任意平面的一些结论 我们令 ,其中A,B 为常数,是由射影变换的要求来假设的。 所以投影值为 一些结论 其中 如果去掉第三行,就是三维投影成二维图形的坐标。 一些结论 同理,平行投影也能得到相似的结论: 当绘图作二维平行投影时,去掉第三行的内容即可。 裁剪 Sutherland-Cohen算法 算法思想:对于每一条线段,分为三种情况来处理: 算法要解决的几个问题 1)如何迅速判断线段是完全可见的还是完全不可见的。 如何解决第一个问题? 编码原则: 对线段两端落在的区域的编码进行“与”运算 结果若不为0000,则完全不可见 结果若为0000,则求交点 若两端都为0000,则完全可见 对第二个问题应不应该? 编程时需要确定这样一个求交点的次序。比如按照边框的左-右-下-上的次序或者上-下-右-左的次序。 裁剪算法的实质 裁剪的实质就是找到被裁线段和窗口四个边框的交点。 如果找不到这样的交点的话,则是显然可见或是显然不可见。 中点分割算法 此算法的优点就是不必直接求和窗口边框的交点,而采用逼近的方法求得。 梁友栋-Barsky算法 算法思想:从A,B,P0中找到离P1最近的点;从C,D,P1中找到离P0最近的那个点,这两个点之间的部分就是线段在窗口内的部分。 快速算法 在实际绘图中,常出现大部分线段是显然可见,或者是显然不可见。因而用最少的操作去判断被裁剪的线段是否属于这两种情况则可以提高裁剪的效率。 此外,尽量减少比较和四则运算,也是提高效率的重要措施。 快速算法 算法思想:把窗口边框看成线段而不是直线,并且考虑到所有可能的情况,用IF…THEN…ELSE来找到和窗口边框上的交点。 其他图形的裁剪 对字符的裁剪 对多边形的裁剪的特殊性 1)对多边形裁剪的结果仍要求是多边形。 多边形裁剪的Sutherland-Hodgman算法 算法思想: 保存多边形的第一个点 用窗口的四条边框对多边形裁剪四次 对于每一次裁剪,都把多边形的边一条一条裁剪和显示过来 对于最后一条边,不须判断顶点是否在窗口边界的可见侧 快速多边形裁剪算法 算法思想:采用直线裁剪的快速算法对多边形的每一条边进行裁剪。 快速多边形裁剪算法需要处理的问题 需要判断采用哪一部分窗口作为多边形的新边界。 以上两种多变性裁剪算法的共同缺点 裁剪后的多边形上常出现一些不属于这个多边形的边。如图中的线段AB。 三维图形的裁剪 Sutherland-Cohen算法推广到三维 编码扩展为6位编码 点在视域上面,第一位为1 点在视域下面,第二位为1 点在视域右面,第三位为1 点在视域左面,第四位为1 点在视域后面,第五位为1 点在视域前面,第六位为1 梁友栋-Barsky算法扩展到三维 当视域为单位立方体时,算法没有什么变化,所要做的只是简单地升维增加变量而已。 窗口到视区的变换 窗口:在投影平面内,指定要显示的内容。 视区:在显示屏幕或绘图纸上指定显示的位置。 窗口到视区变换的数学表达式 窗口中任一点(xw,yw)和视区中对应点(x

文档评论(0)

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

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

1亿VIP精品文档

相关文档