扫描线填充算法的基本思想是:每条水平扫描线与多边形的边产生一系列交点,交点之间形成一条一条的线段,该线段上的像素就是需要被填充的像素。将这些交点按照x坐标排序,将排序后的交点两两成对,作为线段的两个端点。水平扫描线从上到下(或从下到上)扫描由多条首尾相连的线段,使用要求的颜色填充该水平线段上的像素。多边形扫描完成后,颜色填充也就完成了。扫描线填充算法可以归纳为以下4个步骤:
(1) 求交,计算扫描线与多边形的交点;
(2) 交点排序,对第(1)步得到的交点按照x值从小到大进行排序;
(3) 颜色填充,对排序后的交点两两组成一个水平线段,以画线段的方式进行颜色填充;
(4) 是否完成多边形扫描?如果是就结束算法,如果不是就改变扫描线,然后转第1步继续处理;