Google maps api 3 如何根据运输类型计算距离

Google maps api 3 如何根据运输类型计算距离,google-maps-api-3,google-maps-markers,Google Maps Api 3,Google Maps Markers,如何使用谷歌地图API根据交通类型计算两地之间的距离 我需要设计一些类似谷歌地图本身的东西,设置起点和目的地,然后设置交通类型(汽车、步行、公共交通),然后根据它们计算距离 我的应用程序是web应用程序而不是移动应用程序。如果要计算两个地理坐标之间的距离,可以使用Hyperson公式。它给出了两点之间的相同距离。如果你想根据交通量来计算距离,我想你必须自己手工计算 rad = function(x) {return x*Math.PI/180;} distHaversine = functio

如何使用谷歌地图API根据交通类型计算两地之间的距离

我需要设计一些类似谷歌地图本身的东西,设置起点和目的地,然后设置交通类型(汽车、步行、公共交通),然后根据它们计算距离


我的应用程序是web应用程序而不是移动应用程序。

如果要计算两个地理坐标之间的距离,可以使用Hyperson公式。它给出了两点之间的相同距离。如果你想根据交通量来计算距离,我想你必须自己手工计算

rad = function(x) {return x*Math.PI/180;}

distHaversine = function(p1, p2) {
  var R = 6371; // earth's mean radius in km
  var dLat  = rad(p2.lat() - p1.lat());
  var dLong = rad(p2.lng() - p1.lng());

  var a = Math.sin(dLat/2) * Math.sin(dLat/2) +
          Math.cos(rad(p1.lat())) * Math.cos(rad(p2.lat())) * Math.sin(dLong/2) * Math.sin(dLong/2);
  var c = 2 * Math.atan2(Math.sqrt(a), Math.sqrt(1-a));
  var d = R * c;

  return d.toFixed(3);
}
编辑:要根据不同的交通方式显示路径,你可以像下面这样调用url。我不知道在哪里正确的方式做或不做

"http://maps.google.com/maps?saddr=" + currentLatitude+","+currentLongitude+"&daddr="+fixedLatitude+","+fixedLongitude;
我想你指的是“方向”

查看文档的这一部分:


小心点,你有

我用距离矩阵解决了这个问题,谢谢大家。

在哪里显示?在android或其他平台上,我现在可以找到原点和距离的坐标,但没有找到基于trasportation@EmeEmertana距离是用于任何目的还是仅用于视觉目的?我只想显示每种交通方式从起点到终点所花费的时间。@emeemtana我想无法计算基于源和目的地之间运输的差异距离…当我使用
hypersion公式计算两个地理坐标之间的距离并匹配google地图上显示的距离时,两者都是相同的。。。但是,如果你有固定的位置来显示距离(固定路线),那么你可以通过为不同的交通工具获取不同的中间地理坐标来手动完成,最后将中间距离相加以找到总距离……你是对的,我可以根据我的目的对其进行修改,但有没有可能给一个不仅仅是城市的街道地址呢?我没用过那个东西,但看起来你们可以把一个完整的街道地址放进请求的“origin”和“destination”参数中。