基本图形生成算法——实区域填充 《计算机图形学》——曲面与曲线、计算机动画和基本图形生成算法.pptVIP

基本图形生成算法——实区域填充 《计算机图形学》——曲面与曲线、计算机动画和基本图形生成算法.ppt

  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文档。上传文档
查看更多
基本图形生成算法——实区域填充 《计算机图形学》——曲面与曲线、计算机动画和基本图形生成算法

图形反走样技术(antialiasing) 2.从软件角度替高分辨率 高分辨率计算,低分辨率显示 像素细分技术,相当于后置滤波 1 1 1 1 算术平均 1 2 2 1 4 2 1 2 1 加权平均 只能减轻,不能消除 * * 图形反走样技术(antialiasing) 3.区域采样技术 改变边或直线的外观,模糊淡化阶梯 相当于图像的前置滤波 点 有限区域 直线有宽度 * * 图形反走样技术(antialiasing) 8级灰度 0≤面积≤1/8 7/8≤面积≤1 根据相交的面积值决定像素显示的亮度级别 * * 第三章 基本图形生成算法 实区域填充算法 实区域填充算法 确定待填充的象素,即检查光栅的每一像素是否位于多边形区域内 解决的主要问题是什么? 图案填充还有一个什么象素填什么颜色的问题 曲线围成的区域,可用多边形逼近 点在多边形内的包含性检验 检验夹角之和 射线法检验交点数 检验夹角之和 若夹角和为0,则点p在多边形外 若夹角和为360°,则点p在多边形内 A B C D E P A B C D E P 夹角如何计算? 大小:利用余弦定理 方向:令 当T0时,AP斜率BP斜率,为顺时针角 当T0时,AP斜率BP斜率,为逆时针角 z x A B P z x B A P 射线法检验交点数 A B C D E P A B C D E P 交点数=偶数(包括0) 点在多边形之外 交点数=奇数 点在多边形之内 z x 左闭右开 包围盒法 凸多边形 凹多边形 逐点测试效率低不实用怎么办? 实区域填充算法分类 扫描线填充算法 扫描线顺序 种子填充算法 内部一个点出发 扫描线填充算法 求交:I4, I3, I2, I1 排序:I1, I2, I3, I4 交点配对:(I1, I2), (I3, I4) 区间填色 利用图形的空间连贯性和扫描线的连贯性 填充扩大化问题 解决方法: 取中心扫描线y+0.5 检查交点右方像素的中心是否落在区间内 xl≤x+0.5≤xr * * 顶点交点的计数问题 5 4 3 2 1 0 P1 P2 P3 P4 I1 I2 I3 I4 P5 扫描线5 扫描线4 扫描线3 扫描线2 扫描线1 I5 I6 检查交于该顶点的两条边的另外两个端点的y值大于该顶点y值的个数 计数0次 计数1次 计数2次 有序边表算法 影响一般扫描线填充算法效率的因素? 把多边形所有边放在一个表中,按顺序取出,分别计算与每条扫描线的交点? 如何提高效率? 建立每条扫描线的活性边表 何谓活性边? 求交和排序 目标是简化交点计算 有序边表算法 活性边表的建立 结点信息 x:当前扫描线与边的交点 △x:从当前扫描线到下一条扫描线之间的x增量 ymax:边所交的最高扫描线号 活性边表的更新 新边插入 旧边删除 △x =1/k 有序边表算法 对每条扫描线建立一个新边表 结点信息 x0:扫描线与边的初始交点 △x:从当前扫描线到下一条扫描线之间的x增量 ymax:边所交的最高扫描线号 边结点不必排序 y x 0 1 2 3 4 5 6 7 8 9 10 11 1 2 3 4 5 6 7 8 P6 P4 P2 P5 P2 P3 新边表 8.5 7.5 6.5 5.5 4.5 3.5 2.5 1.5 0.5 ∧ ∧ ∧ ∧ ∧ 5 2 8 . 5 -1.5 7 ∧ 11 0 8 ∧ 2 0 7 ∧ 5 -3 2 . 5 3 3 ∧ P4P5 P5P6 P3P4 P6P1 P1P2 P2P3 活性边表 5 -3 2 . 5 3 3 ∧ P1P2 P2P3 y=1.5 2 0 7 . 8 3 3 ∧ P6P1 P2P3 y=2.5 2 0 7 . 11 0 8 ∧ P6P1 P3P4 y=3.5 5 2 8 . P4P5 11 0 8 ∧ P3P4 5 -1.5 7 P5P6 2 0 7 . P6P1 y=5.5 7 2 8 . P4P5 11 0 8 ∧ P3P4 3.5 -1.5 7 P5P6 2 0 7 . P6P1 y=6.5 5 2 8 . P4P5 11 0 8 ∧ P3P4 y=7.5 step1:把新边表NET[i]中的边结点,用插入排序法 插入活性边表AET,使之按X坐标递增顺序排序; step2:遍历AET表,把配对交点之间的区间(左闭右开)上的各象 素(X,Y),用drawpixel(x,y,color)改写象素颜色值; step3:遍历AET表,把Ymax=i的结点从AET表中删除,并把 Ymax>i的结果点的X值递增△X; step4:重复各扫描线 算法:(对每一条扫描线i) 有序边表算法 优点: 对每个像素只访问一次 与设备无关 缺点: 数

文档评论(0)

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

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

版权声明书
用户编号:6212135231000003

1亿VIP精品文档

相关文档