一. 简单递归的不规则区域填充算法——边界填充算法(4联通)
方法十分简洁直观,从内部初始点逐个像素地向外处理,直至遇到边界颜色。
实现代码:
//边界填充算法(4联通)[递归]
void boundaryFill4(GLint x_Index, GLint y_Index)
{
//范围超过窗口边界
if (x_Index<0 || y_Index<0 || x_Index>NUM_HORIZ_ELEMENT || y_Index>NUM_VERTICLE_ELEMENT)
{
return;
}
if (data[x_Index][y_Index] == 0)
{
//修改数据
data[x_Index][y_Index] = 2;
//向右填充递归
boundaryFill4(x_Index + 1, y_Index);
//向左填充递归
boundaryFill4(x_Index - 1, y_Index);
//向上填充递归
b
OpenGL不规则区域填充算法介绍

本文介绍了两种不规则区域填充算法:简单递归的边界填充算法和扫描线种子填充算法。通过详细步骤和实现代码展示了算法的工作原理,并对编程实践中的注意事项进行了反思,强调了程序简洁性和易读性的重要性。
最低0.47元/天 解锁文章
5198





