使用谷歌地图方向api android计算两个位置之间的距离

时间:2015-10-05 07:30:08

标签: android google-maps

我想从Google distance api的两点之间进行计算。有任何实现源代码链接可供实现。

文档链接是: https://developers.google.com/maps/documentation/directions/intro

2 个答案:

答案 0 :(得分:0)

这是我的解决方案。希望这有帮助:)

function getDistance(from, to){
    var service = new google.maps.DistanceMatrixService();
    service.getDistanceMatrix(
    {
        origins: [from],
        destinations: [to],
        travelMode: google.maps.TravelMode.DRIVING,
        unitSystem: google.maps.UnitSystem.METRIC,
        avoidHighways: false,
        avoidTolls: false
    }, function(response, status){callbackFunc();});
}

function callbackFunc(response, status){
    if (status != google.maps.DistanceMatrixStatus.OK) 
    {
        console.log('Error was: ' + status);
    } 
    else
    {
        var from = response.originAddresses;
        var to = response.destinationAddresses;
        for (var i = 0; i < from.length; i++) {
            var results = response.rows[i].elements;
            for (var j = 0; j < results.length; j++) {
                console.log(results[j].distance.value);

            }
        }
    }
}

答案 1 :(得分:0)

您还可以使用大圆距离:

  

球体表面上两点之间的最短距离

它允许您计算API的纬度/长点返回之间的距离。

以下是包含公式的维基百科页面的link

您还可以从此thread或此one

中找到一些实施方案