一尘不染

多边形相交

algorithm

有两个多边形。如何确定一个多边形在另一个多边形的内部,外部还是相交?多边形可以是凹面或凸面。


阅读 318

收藏
2020-07-28

共1个答案

一尘不染

您想对凸多边形使用分离轴定理。基本上,对于每个多边形的每个面,都将每个多边形投影到该面的法线上,然后查看这些投影是否相交。

您可以执行各种技巧来减少必须执行的这些计算的数量-
例如,您可以在对象周围绘制一个矩形,并假设如果两个对象的矩形不相交,则它们本身也不会相交。(这比较容易,因为检查这些框的交点在计算上不那么昂贵,而且通常很直观。)

凹面多边形更加困难。我认为您可以将多边形分解为一组凸多边形,然后尝试检查相交的每种组合,但是我认为自己在该领域不够熟练,无法尝试。

2020-07-28