两个2d凹多边形之间最近的一对特征

时间:2012-02-16 22:54:11

标签: algorithm computational-geometry

问题是找到两个2d凹多边形之间最接近的特征。特征可以是顶点,边缘。因此,结果可以是任何功能组合。有没有比O(m * n)更好的复杂性的简单解决方案?其中m,n - 分别为多边形的边数。多边形是共面的。

1 个答案:

答案 0 :(得分:1)

O(n.log(m))中的算法似乎存在,请参阅this paperthis question

我可以尝试优化我的 (未经测试)

如果您的多边形大部分时间相距足够远,您可以构建两个凸包,并回到找到两个凸多边形之间的Hausdorff距离的最简单问题(O(n+m)中的解)。如果距离 0 ,则必须回退到O(m.log(n))情况,但是如果你大部分时间处于具有正距离的“凸包”情况下,那么它是值得的。

发表-Scriptum 即可。我刚刚意识到,为了使假设起作用,您还需要检查凸包中最接近的特征是否属于原始凹多边形。如果没有,很容易找到一个反例(想象一个字母C形状的多边形,附近有另一个圆形:CO)。

更新后的假设是:两个凹多边形之间的Hausdorff距离d是它们的凸包之间的Hausdorff距离,如果d > 0都最接近功能是原始多边形的一部分。

证明这一点是留给读者的。