【问题标题】:Detecting if a line whether a line runs from one vertex to another completely within a polygon检测一条线是否完全在多边形内从一个顶点延伸到另一个顶点
【发布时间】:2019-01-18 08:35:25
【问题描述】:

我正在处理java中路径查找的一个案例,我需要检测一条线是否与一个多边形相交,我对此进行测试,如果该线与任何多边形边缘相交;但是因为我需要从一个顶点跳到另一个顶点,所以我需要允许多边形的角。不幸的是,这也允许从一个顶点到另一个完全位于多边形内的边。

示例:

我正在寻找一种方法来检测这种情况。有人有想法吗?

【问题讨论】:

  • 你的例子不是很清楚,你指的是哪条线和多边形边?唯一部分跟随多边形边的线是从最左边的顶点到右上角的那条。
  • 您可以做的是检查该线是否在顶点(在您的情况下为凹痕的中心)与多边形相交,以及该线描述的向量的(绝对)方向是否与 (绝对)使用该顶点的边之一的方向,这应该是您所追求的情况。
  • 我指的是直线穿过多边形,分割它。您可以在两个多边形之间或沿着一个多边形的边缘从一个角落走到另一个角落。这是我迄今为止工作的截图,我不得不为这个不清楚的例子道歉。

标签: java math vector polygon path-finding


【解决方案1】:

在对角线不与边相交的情况下,另外检查该对角线的中间是否在多边形内
(例如,使用著名的ray-edges crossing method

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-05-04
    • 1970-01-01
    • 2017-04-29
    • 2019-08-09
    • 2015-06-03
    • 1970-01-01
    相关资源
    最近更新 更多