【问题标题】:Finding a point in the intersection of two polygons在两个多边形的交点中找到一个点
【发布时间】:2014-10-21 21:59:37
【问题描述】:

对于两个凸多边形,我需要在它们的交点内找到一个点。相交的边和顶点不计算在内。我没有要求该点相对于交叉点的边缘在哪里,但最好在中间的某个地方。

对于碰撞检测,我使用 SAP。如果可以将计算合并到 SAP 中,那就太好了,因为我需要高速执行。多边形每个只有几个顶点,形状很简单。

【问题讨论】:

  • 请:表现出一些努力;短语作为问题。
  • 我认为问题很明确:在两个凸多边形的交点内找到一个点的算法是什么?
  • 看起来像这样codezealot.org/archives/394 可能是答案。还有其他方法吗?

标签: collision-detection computational-geometry


【解决方案1】:

Sweep Line 方法可以用来做你想做的事——而且速度足够快。

首先按 x 坐标对两个多边形的顶点进行排序,然后从左到右扫描垂直线,直到找到两个相交的线段 - 一个来自第一个多边形,第二个来自第二个多边形。然后从这些线段的交点中选择任何内部点并停止。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2013-04-29
    • 1970-01-01
    • 2013-05-25
    • 1970-01-01
    • 2015-11-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多