多边形填充在图形、图像处理中经常用到,网上也看到一些高效快速的填充方法,在此对已有的方法做进一步的改进及整理。本文的思路主要参考如下两篇博文:
http://blog.csdn.net/hjh2005/article/details/9244983(高效多边形填充算法及其C例程)
http://blog.csdn.net/hjh2005/article/details/9246967
高效多边形填充算法及其C例程,这篇文章的运算速度比较快。通过分析,可以进一步省略掉一些不必要的运算。下边将按照自己的思路简单讲一下改进后的快速多边形填充方法。
填充多边形最简单的思路是一一判断每一个像素点是否在多边形内部,该思路运算复杂度较高。还有一种直观的感觉是,能否一行一行的扫描,把每一行需要填充的区间段找出来,然后进行填充(如图1中的区间段1,2)。答案是肯定的,我们可以快速的找出图像中每行所需填充的区间段。