2009-02-02 88 views
2

我正在玩耍,并尝试为我的孩子制作一本着色书,我有许多黑白线条画作为背景,以便他们可以在上面画画。如何使用图形对象上的颜色填充区域的边界?

现在,我想添加一个FILL函数,以便它们可以指向并点击绘图中白色的地方,然后让该函数用颜色填充其边界内的整个区域。

通过发送X,Y和为边界定义的颜色并从中获取一个区域,将会很好。然后它只是要做e.Graphics.FillRegion(刷子,区域)来填充它的颜色。

但是我找不到任何允许我这样做的功能,而且我认为自己追查边界太多了。

我是否遗漏了system.drawing类中的某个函数,或者您有其他想法吗?

任何其他的着色书程序的想法也很有趣。 (我使程序安全,因此您可以将孩子留在电脑前,而不会害怕孩子访问电脑上的任何其他物品,并在选择颜色时有不同的有趣声音等)

回答

1

如果“边界”由不同颜色的像素定义,而不是数学公式或Path数据结构,则必须测试并填充单个像素。有一篇关于如何在Code Project上填充.Net的文章。

1

调查洪水填充方法。维基百科拥有大量有关该主题的信息here

相关问题