计算机图形学 - 第四章讲义.ppt

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
* 算法输入参数为:顶点数以及顶点坐标 * Sorted edge table construction procedure: 按顶点输入顺序依次形成边,存储到每条边最小Y值所对应的扫描线位置; 相同最小y值的边按较低顶点x值升序排列 桶排序的思想就是把区间[0,1)划分成n个相同大小的子区间,或称桶,然后将n个输入数分布到各个桶中去。因为输入数均匀分布在[0,1)上,所以一般不会有很多数落在 一个桶中的情况。为得到结果,先对各个桶中的数进行排序,然后按次序把各桶中的元素列 出来即可。 * Sorted edge table construction procedure: 按顶点输入顺序依次形成边,存储到每条边最小Y值所对应的扫描线位置; 相同最小y值的边按较低顶点x值升序排列 * 把与当前扫描线相交的边称为活化边,并把它们按与扫描线交点x坐标递增的顺序存放在一个链表中,形成活化边表。 活化边表的操作包括插入边、删除边,更新边信息。 * 把与当前扫描线相交的边称为活化边,并把它们按与扫描线交点x坐标递增的顺序存放在一个链表中,形成活化边表。 活化边表的操作包括插入边、删除边,更新边信息。 * 区域填充的另一种方法是从区域的一个内点开始,由内向外绘点直到边界。这种方法称为边界填充算法。它在容易选择内点的交互式绘画软件包中特别有用。该算法适用于边界定义区域。 * 区域填充算法要求区域是连通的。通常只考虑两种简单的 连通性:4连通和8连通。 四连通、八连通各自的优缺点 * * * 注意讲解八连通越界的原因 * 受显示器物理特性的限制,在显示直线时,会出现梯形样的锯齿效果,如何减少这种失真现象,这是本节讲解的主要内容,虽然反走样技术已能通过图形显示卡使用硬件方式来实现,但必须让学生理解和掌握反走样技术 * 画示意图,结合第3章画直线的算法,说明受显示器物理特性限制,走样是不可避免的 * 讲解清楚走样产生的原因 图中显示的不充分取样的效果。为了避免 这种周期型对象中丢失信息,必须把取样频率至少设置为出现在对象中的最高频率的两倍,这个频率称为Nyquist取样频率(或Nyquist取样率)fs: fs=2fmax 另一种解释是,取样区间不应超过循环区间(Nyquist取样区间)的一半。对于x区间取样,Nyquist取样区间Δxs为 Δxs=Δxcycle/2 * 增加光栅系统取样率的一种方法是提高分辨率。但即使用当前技术能达到的最高分辨率,锯齿形仍会在一定范围内出现。由于能将帧缓冲器做成多大并仍保持刷新频率在每秒30-60帧方面存在限制。而且要用连续参数精确地显示对象需要任意小的间隔。因此,除非硬件技术能发展到做成任意大的帧缓冲器,增加屏幕分辨率还不能完全解决走样问题 。 对于能显示两级以上亮度(颜色或灰度等级)的光栅系统,可以用反走样方法来修改像素亮度。通过适当地改变沿图沿边界的像素亮度,可以光滑边界以减小锯齿现象 * 一种直截了当的反走样方法是把屏幕看成比实际所具有的更细的网格来增加取样率,而后沿这种更细网格使用取样点来确定每个屏幕像素的合适亮度等级。这种在高分辨率下对对象特性取样并在较低分辨率上显示其结果的技术称为过取样(或后滤波)。所显示的像素位置为覆盖屏幕有限区域的光斑,而非无限小的数学点。在线和区域填充算法中,每个像素的亮度是由对象边界上单个点的位置所决定的。用过取样方法,可从多个点对一个像素总体亮度的贡献来得到亮度信息。 * 直线段的过取样可用多种方式完成。对于直线段的灰度显示,可把每个像素分成一定数目的子像素并统计沿线路径的子像素数目,而后将每个像素的亮度等级设置为正比于这个子像素数目的值 * 如图,每个正方形像素区域被分成9个等大小的正方形子像素,阴影区域表示由Bresenham算法选择的子像素。因为任何像素中可供选择的子像素的最大数目是3,因此这种方法提供0以上3种亮度设置。因而,线亮度分布在较大数目像素上,并通过在阶梯状台阶附近显示有些模糊的线路径使阶梯形状得以改善。如要用更多的亮度等级来实现反走样,就需要增加每个像素中的取样位置数(子像素数目):16个子像素给出0以上4个亮度等级;25个子像素给出0以上5个等级,等等 * 总的线亮度分布在更多的像素上 在图的过取样例子中,我们考虑了有限尺寸的像素区域,但我们把线处理成具有零宽度的数学实体。实际上,显示的线具有大约与像素等宽的宽度。如果考虑直线的宽度,我们可设置象素的亮度正比于表示线段的多边形内部的子象素个数。如图 注:一个子象素的左下角坐标在多边形内部,则认为该子象素在多边形内部。 另一个优点 总的线亮度分布在更多的像素上。一个像素的效果可以来自其相邻像素。 假如有颜色显示,我们也可将此方法扩充来将背景色考虑进去。一

文档评论(0)

80092355km + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档