检查凸多边形交叉点是否小于O(n)?

时间:2016-02-09 10:17:50

标签: algorithm geometry complexity-theory computational-geometry

我有2个凸多边形(2d),我想检查2个多边形是否相交。事实上,我会多次移动和旋转多边形,所以我也可以进行一些预计算以快速解决这个问题。

我正在寻找一种低复杂度的算法。

我知道可以检查一个点位于O(log(n))中的凸多边形中,我想知道我是否可以围绕另一个多边形的点做某种二分法来获得结果。如果有关于此主题的任何现有算法/论文?

1 个答案:

答案 0 :(得分:3)

Gilbert–Johnson–Keerthi(GJK) algorithm正是您所寻找的。它实现起来非常简单,它可以在O(log(n))中检测碰撞。