2012-07-18 71 views
0

我可以從kml文件接收距離嗎? (很抱歉的髒話)我如何找到兩個地理座標點之間的距離

urlString.append("http://maps.google.com/maps?"); 
urlString.append("&saddr=");//from 
urlString.append(src.getLatitudeE6()/1e6);urlString.append(","); 
urlString.append(src.getLongitudeE6()/1e6); 
urlString.append("&daddr=");//to 
urlString.append(dest.getLatitudeE6()/1e6); 
urlString.append(","); 
urlString.append(dest.getLongitudeE6()/1e6); 
urlString.append("&ie=UTF8&0&om=0&output=kml"); 
+0

不知道關於kml文件...但我已經回答瞭如何在這裏找到兩個GeoPoints之間的距離..http://stackoverflow.com/questions/11294208/how-to-find-the-correct-distance -between-two-geopoints-in-map/11294271#11294271 – 2012-07-18 11:49:39

+0

Euchlidean算法 – 2012-07-18 11:54:45

+0

@VipulShah但距離更多例如我知道距離將不再是3-4公里,但答案是355775.4232。:( – 2012-07-18 12:04:16

回答

0

這可能對你有幫助

public static Double calculateDistance(Double lat1, Double lon1, Double lat2, Double lon2) { 
    Double Radius = 6371.00; 
    Double dLat = toRadians(lat2 - lat1); 
    Double dLon = toRadians(lon2 - lon1); 
    Double a = Math.sin(dLat/2) * Math.sin(dLat/2) 
      + Math.cos(toRadians(lat1)) * Math.cos(toRadians(lat2)) 
      * Math.sin(dLon/2) * Math.sin(dLon/2); 
    Double c = 2 * Math.asin(Math.sqrt(a)); 
    return Radius * c; 
} 

通源緯度和經度和目標緯度和經度作爲參數

0

你給的網址上的工作正確的幾個月,但現在突然停止工作,KML文件沒有被下載,而是路徑顯示在谷歌地圖下,我猜這是與谷歌的政策利益衝突。

+0

嘗試使用JSON對象並解析它 http://maps.google.com/maps?f=d&hl=zh-CN&saddr=vizianagaram,&daddr=vishakapatnam,&ie=UTF8&0&om=0&output=json – 2012-10-18 12:52:05

相關問題