gpt4 book ai didi

javascript - 检测折线是否与多边形相交

转载 作者:行者123 更新时间:2023-11-28 01:32:47 26 4
gpt4 key购买 nike

我有一些折线(坐标数组,代表一条路线)

我还有一个多边形(由 4 个坐标组成的矩形)

它们用于 Google map (API v3)。

--

我需要知道这些折线是否与多边形相交,如果是,哪条折线相交?

我希望有一个函数可以将多边形对象和折线数组发送到其中,因此它将返回相交折线的列表。

例如被称为:

var result = checkForIntersects(radiusPoly, polylines);

如果前两条折线相交,结果可能为“0,1”;如果没有相交,结果可能为“”。

希望这是有道理的:-)

此处提供示例多边形和折线: JSfiddle(更新2018-02-01:抱歉,我刚刚注意到我的示例不再有效。但是坐标在那里。我想总比没有好。)

最佳答案

据我所知,目前还没有办法实现我所希望的。

可以检测到重叠的多边形,但仅当其中一个点确实位于多边形内部时才可以检测到折线。

简而言之:我找不到一种方法来检测多边形两侧都有点的折线是否确实“接触”了多边形。

解决方法可能是将折线的每条“腿”分成几条线(例如 256 条线,具体取决于您需要的分辨率),然后检查每个点,看看它们是否位于多边形内.

然而,这对于我所需要的来说太慢了,因为这会导致我需要单独检查数千个点。

此外,它更像是一种黑客而不是解决方案,我不赞成在生产解决方案中这样做。

关于javascript - 检测折线是否与多边形相交,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21910123/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com