Javascript 检测多段线是否与多边形相交

Javascript 检测多段线是否与多边形相交,javascript,google-maps-api-3,polygon,polyline,intersect,Javascript,Google Maps Api 3,Polygon,Polyline,Intersect,我有一些多段线(坐标数组,表示路线) 我还有一个多边形(由4个坐标组成的矩形) 它们用于谷歌地图(API v3) -- 我需要知道这些多段线是否与多边形相交,如果是,多段线与哪个相交 我希望有一个函数可以将多边形对象和多段线数组发送到,这样它将返回相交多段线的列表 例如,可以这样称呼: var result = checkForIntersects(radiusPoly, polylines); 如果前两条多段线相交,则结果可能为“0,1”;如果没有多段线相交,则结果可能为“0,1” 希望它有

我有一些多段线(坐标数组,表示路线)

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

它们用于谷歌地图(API v3)

--

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

我希望有一个函数可以将多边形对象和多段线数组发送到,这样它将返回相交多段线的列表

例如,可以这样称呼:

var result = checkForIntersects(radiusPoly, polylines);
如果前两条多段线相交,则结果可能为“0,1”;如果没有多段线相交,则结果可能为“0,1”

希望它有意义:-)

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

从我所能告诉的来看,目前没有办法实现我所希望的

可以检测重叠多边形,但仅当其中一个点精确位于多边形内部时,才可以检测多段线

简言之:我找不到一种方法来检测在多边形两侧都有点的多段线是否准确地“接触”多边形

解决方法可能是将多段线的每个“支腿”分割成几条线(例如,256条线,取决于所需的分辨率),然后检查这些点中的每个点,以查看它们是否位于多边形内

然而,对于我所需要的,这是非常缓慢的,因为这将导致我需要单独检查数千个点

此外,它更像是一种黑客行为而不是一种解决方案,我不赞成将其应用于生产解决方案中