【发布时间】:2014-04-23 08:02:58
【问题描述】:
我在前端使用Leaflet draw 地图来绘制多边形。
绘制多边形后,我有一个包含这些多边形坐标(纬度、经度)的数组。
最后,我需要检查后端(在离线模式下),如果给定的点(纬度,经度)属于某个多边形。
我明白,这应该是可能的。但是地球是一个球体,多边形位于地面上,我不知道该怎么做。
如何检查?
【问题讨论】:
标签: javascript algorithm geolocation leaflet geofencing
我在前端使用Leaflet draw 地图来绘制多边形。
绘制多边形后,我有一个包含这些多边形坐标(纬度、经度)的数组。
最后,我需要检查后端(在离线模式下),如果给定的点(纬度,经度)属于某个多边形。
我明白,这应该是可能的。但是地球是一个球体,多边形位于地面上,我不知道该怎么做。
如何检查?
【问题讨论】:
标签: javascript algorithm geolocation leaflet geofencing
最简单的解决方案是使用在多边形类中具有功能的地图产品来检查点是否在其中。
如果你的产品没有它,那么你需要自己做数学部分,这里有一些帮助你开始的链接:
【讨论】:
您可以将角度保持在 -180 到 180 之间,然后在 poly 测试中使用一个点:Easy way to keeping angles between -179 and 180 degrees。
【讨论】: