2017-04-02 107 views
2

如何計算Leaflet-ionic2中兩個標記之間的距離?計算單張中兩點之間的距離

找不到,我希望有一個算法,只要我選擇一個標記,它會顯示我的位置和標記之間的距離。

謝謝..

回答

2

您可以使用此功能找到2位置之間的距離。

function getDistance(origin, destination) { 
    // return distance in meters 
    var lon1 = toRadian(origin[1]), 
     lat1 = toRadian(origin[0]), 
     lon2 = toRadian(destination[1]), 
     lat2 = toRadian(destination[0]); 

    var deltaLat = lat2 - lat1; 
    var deltaLon = lon2 - lon1; 

    var a = Math.pow(Math.sin(deltaLat/2), 2) + Math.cos(lat1) * Math.cos(lat2) * Math.pow(Math.sin(deltaLon/2), 2); 
    var c = 2 * Math.asin(Math.sqrt(a)); 
    var EARTH_RADIUS = 6371; 
    return c * EARTH_RADIUS * 1000; 
} 
function toRadian(degree) { 
    return degree*Math.PI/180; 
} 
var distance = getDistance([lat1, lng2], [lat2, lng2]) 

我們正在利用我們的庫time-aware-polyline此功能編碼與時間戳緯度經度信息。