2016-08-05 25 views
-1

我想這如何找到協調兩者之間的距離,使用JavaScript和駕駛模式

function distance(lat1,lon1,lat2,lon2) 
 
{ 
 
\t var R = 6371; // km (change this constant to get miles) 
 
\t var dLat = (lat2-lat1) * Math.PI/180; 
 
\t var dLon = (lon2-lon1) * Math.PI/180; 
 
\t var a = Math.sin(dLat/2) * Math.sin(dLat/2) + Math.cos(lat1 * Math.PI/180) * Math.cos(lat2 * Math.PI/180) * Math.sin(dLon/2) * Math.sin(dLon/2); 
 
\t var c = 2 * Math.atan2(Math.sqrt(a), Math.sqrt(1-a)); 
 
\t var d = R * c; 
 
\t if (d>1) return Math.round(d)+"km"; 
 
\t else if (d<=1) return Math.round(d*1000)+"m"; 
 
\t return d; 
 
}

距離(21.1702401,72.83106070000008,22.3038945,70.80215989999999);

使用上述功能即時得到這樣的輸出:對於直線距離245公里

結果來:245公里

,但我需要推動這一位置的模式ditance和它的輸出應該是448公里

從價值:蘇拉特,印度古吉拉特 價值是:拉傑果德,印度古吉拉特邦

所以請幫助我解決這個.. 感謝

回答

1

行車路線不能「簡單」計算。你需要知道道路,多長時間,哪裏可以關閉等等。

在沒有底層數據的單個函數中執行起來太複雜了。

我建議你看看谷歌地圖API或找到TomTom/Apple/Garmin是否有他們的地圖數據的API。

相關問題