2015-10-19 41 views

回答

0

從這個問題我假設你有兩個點的球面座標(lat,lon)。你可以簡單地使用haversine formula來計算距離,這給你的距離'如烏鴉'。在JavaScript

例(從here拍攝):

var radians = Array.prototype.map.call(arguments, function(deg) { return deg/180.0 * Math.PI; }); 
    var lat1 = radians[0], lon1 = radians[1], lat2 = radians[2], lon2 = radians[3]; 
    var R = 6372.8; // km 
    var dLat = lat2 - lat1; 
    var dLon = lon2 - lon1; 

    var a = Math.sin(dLat/2) * Math.sin(dLat /2) + Math.sin(dLon/2) *  Math.sin(dLon /2) * Math.cos(lat1) * Math.cos(lat2); 
    var c = 2 * Math.asin(Math.sqrt(a)); 

    return R * c; 

如果有平面座標,只需使用畢達哥拉斯。

相關問題