用颜色

时间:2016-05-02 08:19:08

标签: c# algorithm 2d

我从打印后看起来像这样的数组得分: enter image description here

基于三个阵列打印点:一个是x坐标,第二个是y坐标,第三个是颜色值。现在我需要一个算法来填充这些点之间的空间。重要的是我不想填充不同形状之间的空间。有没有任何方法可以做到这一点,除了使用凹形船体(c#中没有实现)

编辑:是否有可能以某种方式分离这些区域然后使用洪水填充?

1 个答案:

答案 0 :(得分:2)

您需要算法精确度如何?

如果你可以容忍一些不精确(也会选择点形状周围的小区域),你可以做模糊。

会是这样的:

1)以小半径模糊图像(等于点之间允许的最大距离的一半)。

2)具有与背景颜色精确相等的颜色的每个像素被视为"外部" (每个具有不同颜色的像素与较暗点之一的距离很小。)

WPF中有BlueBitmapEffect,但可能无法在您的方案中使用。你可以在网上找到无数的模糊实现。

如果你需要准确,我认为你运气不好。你的目标基本上是凸/凹船体的定义。