第章 基本图形的生成(三).pptVIP

  1. 1、本文档共55页,可阅读全部内容。
  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文档。上传文档
查看更多
第章 基本图形的生成(三)

Weiler-Athenton算法 * 内蒙古大学计算机图形学 * Weiler-Athenton算法 * 内蒙古大学计算机图形学 * (1)建立空的裁剪结果多边形的顶点表. (2)选取任一没有被跟踪过的交点为始点,将其输出到结果多边形顶点表中. (3)如果该交点为进点,跟踪主多边形边边界;否则跟踪裁剪多边形边界. (4) 跟踪多边形边界,每遇到多边形顶点,将其输出到结果多边形顶点表中,直至遇到新的交点. (5)将该交点输出到结果多边形顶点表中,并通过连接该交点的双向指针改变跟踪方向(如果上一步跟踪的是主多边形边界,现在改为跟踪裁剪多边形边界;如果上一步跟踪裁剪多边形边界,现在改为跟踪主多边形边界). (6)重复(4)、(5)直至回到起点 取I7为起点,所得裁剪结果多边形I7I0q0I3I4I5I6I7。取I8为起点,所得裁剪结果多边形为I8I9I10I11I2q2I1I8。 Weiler-Athenton算法 * 内蒙古大学计算机图形学 * 交点的奇异情况处理 1、与裁剪多边形的边重合的主多边形的边不参与求交点; 2、对于顶点落在裁剪多边形的边上的主多边形的边,如果落在该裁剪边的内侧,将该顶点算作交点;而如果这条边落在该裁剪边的外侧,将该顶点不看作交点 * 内蒙古大学计算机图形学 * 字符裁剪 把每个字符看作是不可分割的整体,对每一个字符串就可用逐字裁剪的方法,把每个字符用一矩形(字符框)包围起来(见图),然后检测该字符框中的某一点(如顶点或中心点)的可见性,把该点与窗口进行比较,如果在窗口内,就显示该字符,否则就舍弃不显示,另外也可以用整个字符框的界线或其对角线与窗口进行比较,当字符框或对角线完全在窗口内时才显示该字符,不过用字符框顶点或用字符框界线(或对角线)裁剪的两种方法,只有当窗口边与字符框界线平行时才等效,否则必须以字符框界进行裁剪。 * 内蒙古大学计算机图形学 * 裁剪字符串的一种粗略方法,是把一个字符串作为不可分割的整体来处理,用一个字符串框封闭起来(见图),检测这个字符串框上的某一点、界线的对角线或者界线本身的可见性,若在窗口内,就显示整串字符,否则整串字符就不显示。 反走样 * 内蒙古大学计算机图形学 * 用离散量表示连续量引起的失真现象称之为走样(aliasing) 。 光栅图形的走样现象 阶梯状边界; 图形细节失真; 狭小图形遗失:动画序列中时隐时现,产生闪烁。 走样现象举例 * 内蒙古大学计算机图形学 * 不光滑(阶梯状)的图形边界 例子:PaintBrush 走样现象举例 * 内蒙古大学计算机图形学 * 图形细节失真 走样现象举例 * 内蒙古大学计算机图形学 * 狭小图形的遗失与动态图形的闪烁 反走样概念及方法 * 内蒙古大学计算机图形学 * 用于减少或消除走样现象的技术称为反走样(antialiasing) 提高分辨率 简单区域取样 加权区域取样 提高分辨率 * 内蒙古大学计算机图形学 * 把显示器分辨率提高一倍, 直线经过两倍的象素,锯齿也增加一倍, 但同时每个阶梯的宽度也减小了一倍, 所以显示出的直线段看起来就平直光滑了一些。 提高分辨率 * 内蒙古大学计算机图形学 * 方法简单,但代价非常大。显示器的水平、竖直分辩率各提高一倍,则显示器的点距减少一倍,帧缓存容量则增加到原来的4倍,而扫描转换同样大小的图元却要花4倍时间。 而且它也只能减轻而不能消除锯齿问题 另一种方法(软件方法): 用较高的分辨率的显示模式下计算,(对各自像属下计算,再求(非)加权平均的颜色值),在较低的分辨率模式下显示。只能减轻而不能消除锯齿问题。 软件方法1 * 内蒙古大学计算机图形学 * 把每个像素分为四个子像素,扫描转换算法求得各子像素的灰度值,然后对四像素的灰度值简单平均,作为该像素的灰度值。 软件方法2 * 内蒙古大学计算机图形学 * 设分辨率为m?n,把显示窗口分为(2m+1)?(2n+1)个子像素,对每个子像素进行灰度值计算,然后根据权值表所规定的权值,对位于像素中心及四周的九个子像素加权平均,作为显示像素的颜色。 设m=3,n=4 简单区域取样 * 内蒙古大学计算机图形学 * 方法由来 两点假设 1、象素是数学上抽象的点,它的面积为0,它的亮度由覆盖该点的图形的亮度所决定; 2、直线段是数学上抽象直线段,它的宽度为0。 现实 像素的面积不为0; 直线段的宽度至少为1个像素; 假设与现实的矛盾是导致混淆出现的原因之一 简单区域取样 * 内蒙古大学计算机图形学 * 解决方法:改变直线段模型,由此产生算法 方法步骤: 1、将直线段看作具有一定宽度的狭长矩形; 2、当直线段与某象素有交时,求出两者相交区域的面积

文档评论(0)

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

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

1亿VIP精品文档

相关文档