将某些区域的颜色以编程方式分隔

时间:2013-02-27 11:27:28

标签: colors bitmap drawing

我想写一个算法,允许我在绘图中的分隔区域填充颜色。我给你举个例子:

enter image description here

enter image description here

开始这个算法的方法是什么?我可以采取行动来实现这一功能? 或者有什么事情要做吗?

感谢

1 个答案:

答案 0 :(得分:0)

我想到了{p> http://en.wikipedia.org/wiki/Flood_fill,但我不认为这是最好的答案......

另请注意,如果使用微软绘画或其他成像软件放大图像,您可能会注意到有些模糊技术会使这项技术变得更加棘手,理想情况下,此技术可以使用更清晰的锐利像素边框。

大多数形状绘制子程序默认允许填充形状,但你要问的是有点棘手。

特别是,我通常会绘制一个填充的形状,然后绘制一个与填充形状相同的未填充形状,但边框颜色不同,模拟您想要做的事情。

我的意思是伪代码

 setcolor(backgroundcolor); 
 fillrect(0, 0, width, height);

 setcolor(roofcolor); 
 filltriangle(x1, y1, x2, y2, x3, y3);
 setcolor(black); 
 drawtriangle(x1, y1, x2, y2, x3, y3);

 ... so on