在 Google Maps for Ionic 2 中计算两点之间的距离
Posted
技术标签:
【中文标题】在 Google Maps for Ionic 2 中计算两点之间的距离【英文标题】:Calculating distance between two points in Google Maps for Ionic 2 【发布时间】:2017-09-03 10:56:47 【问题描述】:我在开始使用这个新功能时遇到了麻烦,我必须在我正在处理的应用程序上实现该功能。所以应用程序是这样工作的;用户通过按下按钮在地图上输入一个点并获得源的 latlng。另一个模式打开,然后他们必须为目的地做同样的事情。我想要做的是计算两点之间的距离并在地图上显示路线。我一直在尝试找到这方面的教程,但没有运气。任何人都知道如何做到这一点或有任何工作示例回购,我可以看看它?会有很大帮助。谢谢!
【问题讨论】:
使用 google maps api,您可以像通过 2 个位置一样简单地获得两点之间的距离。 两个位置作为 latlng 对象传递? api叫什么名字? 这是一个例子:maps.googleapis.com/maps/api/distancematrix/…。完整的文档在这里:developers.google.com/maps/documentation/distance-matrix/intro 【参考方案1】:你见过吗:
https://***.com/a/27943/52160
function getDistanceFromLatLonInKm(lat1,lon1,lat2,lon2)
var R = 6371; // Radius of the earth in km
var dLat = deg2rad(lat2-lat1); // deg2rad below
var dLon = deg2rad(lon2-lon1);
var a =
Math.sin(dLat/2) * Math.sin(dLat/2) +
Math.cos(deg2rad(lat1)) * Math.cos(deg2rad(lat2)) *
Math.sin(dLon/2) * Math.sin(dLon/2);
var c = 2 * Math.atan2(Math.sqrt(a), Math.sqrt(1-a));
var d = R * c; // Distance in km
return d;
function deg2rad(deg)
return deg * (Math.PI/180)
【讨论】:
以上是关于在 Google Maps for Ionic 2 中计算两点之间的距离的主要内容,如果未能解决你的问题,请参考以下文章
Ionic 2 Angular 2 Google Maps 从数据库坐标中添加多个标记
Ionic 2 - Google Maps Native:标记点击事件未触发
Ionic:新幻灯片(Swiper)+ angular-google-maps 在拖动时会导致灰色空间