获取国家内的路线长度

时间:2017-03-13 09:06:13

标签: javascript google-maps

您能否建议如何执行以下任务? 我有从A点到B点的路线。这条路线经过几个国家。我如何使用谷歌地图计算或替代每个国家/地区的路线部分距离?

对于任何想法都会非常感激吗?

1 个答案:

答案 0 :(得分:0)

这应该让你去,在这里查看小提琴https://jsfiddle.net/yeoman/nm50vypx/1/ 基本上做以下事项:

1。获取FIRST点的经度和纬度

2. 获取第二点的经度和纬度

3。用户内置API函数google.maps.geometry.spherical.computeDistanceBetween()

var p1 = new google.maps.LatLng(45.463688, 9.18814);
var p2 = new google.maps.LatLng(46.0438317, 9.75936230000002);

alert(calcDistance(p1, p2));

//calculates distance between two points in km's
function calcDistance(p1, p2) {
  return (google.maps.geometry.spherical.computeDistanceBetween(p1, p2) / 1000).toFixed(2);
}

重要提示:您的脚本代码中必须包含&libraries=geometry

例如<script type="text/javascript" src="http://maps.google.com/maps/api/js?key=YOURKEYHERE&libraries=geometry"></script>

另一个一行示例

var latitude1  = 39.46;
var longitude1 = -0.36;
var latitude2  = 40.40;
var longitude2 = -3.68;
var distance = google.maps.geometry.spherical.computeDistanceBetween(new google.maps.LatLng(latitude1,longitude1), new google.maps.LatLng(latitude2,longitude2)); 

编辑:距离结果以

表示