- 107
- 0
- 约8.88千字
- 约 58页
- 2018-05-29 发布于湖北
- 举报
计算机图形学5多边形扫描转换与区域填充
逐点判断法 2)累计角度法 步骤 从v点向多边形P顶点发出射线,形成有向角 计算有相交的和,得出结论 栅栏填充算法 边缘填充算法缺点:每一个象素可能被访问多次 引入栅栏,以减少填充算法访问象素的次数。 栅栏:与扫描线垂直的直线,通常过一顶点,且把多边形分为左右二半。 基本思想:扫描线与多边形的边求交,将交点与栅栏之间的象素取补。若交点位于栅栏左边,则将交点之右,栅栏之左的所有象素取补;若交点位于栅栏右边,则将交点之左,栅栏之右的所有象素取补。 减少了象素重复访问数目,但不彻底。 扫描线填充算法 (1)初始化:堆栈置空。将种子点(x,y)入栈。 (2)出栈:若栈空则结束。否则取栈顶元素(x,y),以y作为当前扫描线。 (3)填充并确定种子点所在区段:从种子点(x,y)出发,沿当前扫描线向左、右两个方向填充,直到边界。分别标记区段的左、右端点坐标为xl和xr。 (4)并确定新的种子点:在区间[xl,xr]中检查与当前扫描线y上、下相邻的两条扫描线上的象素。若存在非边界、未填充的象素,则把每一区间的最右象素作为种子点压入堆栈,返回第(2)步。 上述算法对于每一个待填充区段,只需压栈一次;因此,扫描线填充算法提高了区域填充的效率。 扫描线算法分析(举例分析) 该算法也可以填充有孔区域。 扫描线算法分析(举例分析) 扫描线算法分析(举例分析) 扫描线算法分析(举例分析) 图案填充 图案在区域的局部坐标系中定义 前景色与背景色的合成问题 像素着色模式问题 透明或不透明 本质:规定前景色与背景色的组合规则,如前景色优先、背景色优先、前景色与背景色的加权组合、或各种规则的组合。 像素着色模式 图案填充 在扫描转换算法中对像素着色操作需增加额外控制 像素着色模式 与图案中1标记位置对应的像素写为前景色 在透明模式下: 与图案中0标记位置对应的像素不进行写操作 在不透明模式下: 与图案中0标记位置对应的像素写为背景色(图案背景色) 逐边向右取 右 右 右 右 6、边界标志算法 基本思想: 帧缓冲器中对多边形的每条边进行直线扫描转换,亦即对多边形边界所经过的象素打上标志。 然后再采用和扫描线算法类似的方法将位于多边形内的各个区段着上所需颜色。 使用一个布尔量inside来指示当前点是否在多边形内的状态。 void edgemark_fill(polydef, color) 多边形定义 polydef; int color; { 对多边形polydef 每条边进行直线扫描转换; inside = FALSE; for (每条与多边形polydef相交的扫描线y ) for (扫描线上每个象素x ) {if(象素x被打上边标志)//两个交点之间的区域填充 inside = ! (inside); if(inside!= FALSE) putpixel (x, y, color); else drawpixel (x, y, background); } } 用软件实现时,扫描线算法与边界标志算法的执行速度几乎相同, 由于边界标志算法不必建立维护边表以及对它进行排序,所以边界标志算法更适合硬件实现,这时它的执行速度比有序边表算法快一至两个数量级。 小结 扫描线法可以实现已知多边形域边界的填充,多边形域可以是凹的、凸的、还可以是带孔的。该填充算法是按扫描线的顺序,计算扫描线与待填充区域的相交区间,再用要求的颜色显示这些区间的像素,即完成填充工作。 这里区间的端点通过计算扫描线与多边形边界的交点获得。所以待填充区域的边界线必须事先知道,因此它的缺点是无法实现对未知边界的区域填充。 二、区域填充 区域填充是指将区域内的一点(常称种子点)赋予给定颜色,然后将这种颜色扩展到整个区域内的过程。 它是光栅计算机图形学中的一个基本操作,在交互式图形设计、动画、计算机辅助设计等领域有着广泛的应用。 区域---指已经表示成点阵形式的填充图形,是象素的集合。 在光栅图形学中,区域指的是已经表示成点阵形式的象素的集合。 区域可采用内点表示和边界表示两种表示形式。 内点表示:枚举出区域内部的所有像素,内部的所有像素着同一个颜色,边界像素着与内部像素不同的颜色。 边界表示:枚举出边界上的所有像素,边界上的所有像素着同一个颜色,内部像素着与边界像素不同的颜色。 区域可分为4向连通区域和8向连通区域。 四个方向运动 八个方向运动 四连通区域 八连通区域 区域填充算法要求区域是连通的,因为只有在
您可能关注的文档
最近下载
- 2025《“混改”后的云南白药公司治理及效果分析》6700字.doc VIP
- 2025年山东理工职业学院单招《数学》检测卷(word)附答案详解.docx VIP
- 2025年山东理工职业学院单招《数学》考前冲刺练习【实用】附答案详解.docx VIP
- 新人教版九年级数学下册导学案全册.docx VIP
- (正式版)JJF(蒙) 082-2024 《旋转蒸发仪校准规范》.pdf VIP
- 国际脓毒症和脓毒性休克管理指南解读.ppt
- 七年级下册语文单元测试卷及解析.docx VIP
- 人工智能安全与伦理挑战.pptx VIP
- 2023年执业药师继续教育咽喉反流性疾病的诊治参考答案.docx VIP
- 2025年山东理工职业学院单招英语模拟试题(附答案解析) 完整版2025.pdf VIP
原创力文档

文档评论(0)