2013-04-08 71 views
1

/LNG中心給出的一個DB充滿父/政治區地理定位數據的子關係/名稱:獲取緯度的國家,州或地區

  • 國家
  • 國家

現在我正在查詢該數據,構建一個像germany,bavaria,ebersberg這樣的字符串,然後嘗試通過Nominatim API(OpenStreetMaps的一部分)獲取該區域的緯度/經度中心。

例字符串:

http://nominatim.openstreetmap.org/search?format=xml&polygon=0&addressdetails=0&q=germany,bavaria,ebersberg 

問題是,我回來與緯度/經度的而不是準確的地理數據一堆POI的。這通常會導致顯示該地區的一半,因爲第一個POI可能接近該地區邊界。

有沒有人知道一種方法來獲取中心的緯度/經度,或如何居中一個OSM地圖?或者是否有人知道可以實現這一點的替代API,並告訴它如何工作/舉例?

+0

爲什麼標記爲google-maps和google-maps-api-3?你在使用Google地圖嗎? Google Maps API v3地理編碼器會返回地理區域和建議視口的界限,但根據使用條款,這些結果需要顯示在Google地圖上。 – geocodezip 2013-04-08 17:21:15

+0

@geocodezip是一個錯誤,因爲我有谷歌地圖API正在使用的應用程序的另一部分。 – kaiser 2013-04-08 18:43:33

回答

0

有誰知道如何獲得中心的緯度/經度或如何居中一個OSM地圖?

當你得到一堆關於緯度和經度的興趣點時,你有一個特徵,而不是一個問題。

您遍歷POI,構建一個包含所有POI的邊界矩形。換句話說,您可以找到最小的緯度,最小的經度,最大的緯度和最大的經度。

您可以通過公式

(maximum + minimum)/2 

邊界區域應足夠小,你不會招致太多的錯誤經度和緯度工作找到矩形的中心。

否則,您可以計算最小的緯度,經度和最大的緯度,經度之間的距離。該中心距離最小緯度,經度的一半。將該中心點轉換回經緯度,爲您的答案。

+0

感謝您的答覆(完全監督它 - 爲遲到的反應)。問題是我遇到了一個地區只有一個或兩個POI的情況。然後我遇到了與上述完全相同的問題:我遠離中心,並且POI不足以告訴我該區域的大小。所以是的,這是一個功能 - 我不需要。而且,OSM似乎缺乏我正在尋找的功能:獲取區域(或其他)的邊界。 – kaiser 2013-04-15 14:47:38

相關問題