如何将 GPS 位置与地图区域相匹配?
How to match a GPS location to a map area?
从GPS设备获取经纬度后,我需要检查这个设备是在湖边还是河边,面积比较大。
我可以将沿河的一系列 GPS 位置作为数组存储在数据库中。如果检测到的位置接近数组中的任何值,我会确定用户是 along/on 河流。
这个方法很别扭。当涉及到湖泊时,它会遇到麻烦。用户可能在湖中乘船,位置远离湖边。
那么,确定 GPS 位置是否接近 river/lake 的首选解决方案是什么?
正确的方法是使用点多边形算法。
数字地图提供商提供水域的多边形,如湖泊或河流。
有基于线的水结构(小河的中线)和基于多边形的结构。这些多边形附有名称。
困难(或昂贵)的部分是获得多边形。
如果您没有与两个主要的数字地图提供商(TomTom 和 Here)签订合同,您只能尝试 OpenStreetMap。
从GPS设备获取经纬度后,我需要检查这个设备是在湖边还是河边,面积比较大。
我可以将沿河的一系列 GPS 位置作为数组存储在数据库中。如果检测到的位置接近数组中的任何值,我会确定用户是 along/on 河流。
这个方法很别扭。当涉及到湖泊时,它会遇到麻烦。用户可能在湖中乘船,位置远离湖边。
那么,确定 GPS 位置是否接近 river/lake 的首选解决方案是什么?
正确的方法是使用点多边形算法。 数字地图提供商提供水域的多边形,如湖泊或河流。
有基于线的水结构(小河的中线)和基于多边形的结构。这些多边形附有名称。
困难(或昂贵)的部分是获得多边形。 如果您没有与两个主要的数字地图提供商(TomTom 和 Here)签订合同,您只能尝试 OpenStreetMap。