计算机图形学3.ppt

3.3 区域填充算法;3.3.1 基础知识 ;多边形的表示方法 ;填色算法分为两大类:  ⒈ 扫描线填色(Scan-Line Filling)算法。这类算法 建立在多边形边界的矢量形式数据之上,可用于程序填 色,也可用于交互填色。  ⒉ 种子填色(Seed Filling)算法。这类算法建立在多 边形边界的图像形式数据之上,并还需提供多边形边界 内一点的坐标。所以,它一般只能用于人机交互填色, 而难以用于程序填色。;  多边形填色一个首要的问题,是判断一个像素是在多边形内还是多边形外。数学上提供的方法是“扫描交点的奇偶数判断法”。 ;3.3.2 多边形扫描线填充算法 ;扫描线填充算法;对于一条扫描线,多边形的填充过程可以分为四个步骤: (1)求交:计算扫描线与多边形各边的交点; (2)排序:把所有交点按x值递增顺序排序; (3)配对:第一个与第二个,第三个与第四个等等;每对交点代表扫描线与多边形的一个相交区间; (4) 填色:把相交区间内的像素置成多边形颜色,把相交区间外的像素置成背景色。 ;扫描线算法需要解决或改进的几个问题: 1、如何处理奇数个交点? 2、如何处理水平边? 3、如何计算交点坐标? 4、如何减少求交计算量?;;第一个问题:处理奇数个交点; 扫描线与边的求交点方法采用递归算法。以(x1, y1)、(x2, y2)为端点的边与第i+1条扫描线的交点为:;对于

文档评论(0)

1亿VIP精品文档

相关文档