扫描线填充种子填充线宽和线型.ppt

学习内容;学习要点;一、扫描线填充算法; 区域是指相互连通的一组像素的集合。通常是由一个封闭的轮廓来定义,处于一个封闭轮廓线内的所有像素点即构成了一个区域。 例如:矩形、圆、椭圆、多边形等等。;区域---多边形(凸、凹)、圆、椭圆、带孔的。;区域填充分两步:;逐点判断法;交点配对,1与2,3… …,每对表示一个区间。;问题一:;0;两个连贯性;如何刻画多边形的边;二、边的结构;算法:活化边表法 --通过 单向链接表 的操作得到扫描线与边的交点。;有序边表的建立; 通过有序边,利用边的连贯性建立活化边表。它记录了多边形边沿扫描线的交点序列。;活化边表的建立;Y=4;活化边表的建立;活化边表的建立;活化边表的建立;活化边表;算法具体实现步骤;a)如有序边表ET中的第y类元素非空,则将属于该类的所有边从ET中取出并插入第y类扫描线的活化边表中,AEL中的各边按照x值(当x值相等时,按Δx值)递增方向排序。边的增加和排序;Polygonfill(polydef,color) Int color; 多边形定义,polydef; { for(各条扫描线I) { 初始化新边表表头指针NET[i]; 把 =I的边放进表NET[i]; } y=最低扫描线号; 初始化活化边表AET为空; for(各条扫描线i) { 把新边

文档评论(0)

1亿VIP精品文档

相关文档