google-maps - 获取特定点与谷歌地图上绘制的线之间的距离
问题描述
我在谷歌地图上绘制了一个点 (lat, lng) X 和一条路线,如下所示。
在我的应用程序中,我有一个规则:
如果 X 点与路线经过的最近点之间的距离小于 5 米,则可以通过该路线。
否则,如果点 X 到路线经过的最近点的距离等于或大于 5 米,则无法通过该路线。
是否可以使用谷歌地图服务应用此规则?
解决方案
Google Maps Javascript API 有一个Geometry 库。
几何库有一个isLocationOnEdge
功能。请参阅文档。
要确定一个点是否落在折线上或附近,或者在多边形的边缘上或附近,请将点、折线/多边形以及可选的以度数为单位的公差值传递到
google.maps.geometry.poly.isLocationOnEdge()
。如果该点与直线或边上最近点之间的距离在指定的容差范围内,则该函数返回 true。默认容差值为 10 -9度。
推荐阅读
- react-native - 如何在 react-native 中动态设置 initialRouteName
- python - 如何安全地在查询中参数化 pyodbc 标识符?
- android - 如何从 UTC 日期时间中获取日期时间?
- codeigniter - 如何通过从两个不同的路径调用来显示图像?
- javascript - 创建元素,并将父属性添加到innerHTML
- laravel - Laravel - 如何在弹出窗口中确认销毁方法?
- datacontractserializer - .Net 框架服务引用类生成器遵守的 JAXB 顺序
- html - 带有图标和计数器字段的响应式文本字段
- javascript - 无法在 ionic-native/in-app-purchase-2 中完成交易
- python - 如何在 django admin 中使用多个类修饰符?