首页 > 解决方案 > 获取特定点与谷歌地图上绘制的线之间的距离

问题描述

我在谷歌地图上绘制了一个点 (lat, lng) X 和一条路线,如下所示。

在此处输入图像描述

在我的应用程序中,我有一个规则:

如果 X 点与路线经过的最近点之间的距离小于 5 米,则可以通过该路线

否则,如果点 X 到路线经过的最近点的距离等于或大于 5 米,则无法通过该路线。

是否可以使用谷歌地图服务应用此规则?

标签: google-mapsgoogle-maps-api-3google-api

解决方案


Google Maps Javascript API 有一个Geometry 库

几何库有一个isLocationOnEdge功能。请参阅文档

要确定一个点是否落在折线上或附近,或者在多边形的边缘上或附近,请将点、折线/多边形以及可选的以度数为单位的公差值传递到google.maps.geometry.poly.isLocationOnEdge()。如果该点与直线或边上最近点之间的距离在指定的容差范围内,则该函数返回 true。默认容差值为 10 -9度。


推荐阅读