在上图形学课的时候,学习了扫描线填充算法。不过在完成实验的时候在真正理解了该算法,在此记录一下,如果有表达上的错误,欢迎指正!
扫描线填充算法通过在与图形相交的第(1,2)、(3,4)… 边之间划线不断不断填充图形。因此,在扫描时就需要确定什么时候与图形的某条边相交、划线的时候x的范围是多少以及划线时是从哪个交点画至另一个交点。
结构体如下所示:
为了节省存储的空间,边表项也使用链表结构,将图形中ymin值相同的边链接在同一个边表项后,这样在扫描的时候方便添加。
具体的流程如下:
一、初始化活动边表
1. 统计并初始化表项
2. 将每条边分别链接在表项后
二、 绘制与填充
1. 取出当前与扫
2021-12-15 20:32:27
99KB
算法
1