在画布上填充相同颜色的区域

时间:2014-09-27 20:19:29

标签: c# wpf

我正在编写类似于MS Paint的应用程序,我已经获得了铅笔,形状和线条功能。我将System.Windows.Shapes.Shape个对象(如Rectange,Ellipse等)添加到Canvas,一切正常。现在我想知道如何创建"桶"像MS Paint(相同颜色的填充区域)这样的功能,是否可以在我的应用程序中执行此类操作或者我需要重构它?

1 个答案:

答案 0 :(得分:0)

我认为根据您的技能和时间,有不同的方法来实现这一点。

如果我愿意,我会通过

链接相同颜色和相同位置的像素

http://en.wikipedia.org/wiki/Connected-component_labeling这种方法。然后给它们着色。

或者: http://en.wikipedia.org/wiki/Flood_fill