CONREC与不规则网格?

时间:2015-12-05 23:47:44

标签: java plot contour

我一直在使用CONREC例程绘制一些轮廓很长一段时间,并且它一直工作正常。这是算法的链接:

http://paulbourke.net/papers/conrec/

但现在我有一个(有效的)不规则网格。我有"填充值"的数据。因此,网格可能如下所示:

1  6  3  5
3  4  4 -9
4  3  2 -9
2  2 -9 -9

其中-9被指定为填充值。当我将填充值更改为某些越界数字(例如100)时,它不会为该区域创建轮廓,但它会在通向该填充区域的陡坡上创建轮廓。这是一个例子:

enter image description here

注意品红色之前的黑色条纹(灰色区域只是调试)。如果我使用更接近数据范围的填充值,则条带会消失,但会为填充区域创建轮廓。

有没有人对解决这个问题的方法有任何建议?如果不能使用此算法,是否有任何其他轮廓包可以使用不规则网格?我正在使用java,因此最容易重用。

1 个答案:

答案 0 :(得分:0)

在我看来,conrec算法不支持这一点。如果您需要不规则的形状/边框,则需要使用约束算法。您可以使用2步算法。首先,计算形状,然后计算轮廓图,然后使用形状确定要从等高线图中使用的像素。您可以对形状使用简单的颜色检查,当然也可以检查整个形状。您可以在cntm.codeplex.com上尝试我的php实现等高线图。