2009-06-29 28 views

回答

2

是的。 Google有一個靜態地圖API,它可以做到這一點。它基本上只是一個URL,其緯度,經度和縮放級別作爲參數傳遞(以及大量其他變量)。你可以在Google Maps API documentation中閱讀。

這裏是你可以做什麼的例子:

從網址:

http://maps.google.com/staticmap?center=40,26&zoom=1&size=150x112&maptype=satellite&key=ABQIAAAAgb5KEVTm54vkPcAkU9xOvBR30EG5jFWfUzfYJTWEkWk2p04CHxTGDNV791-cU95kOnweeZ0SsURYSA&format=jpg 

編輯:按照您的評論。最接近我可以得到一個方形30,40 lat 60,70 lng是中心35,65 zoomlevel 6.我有created an example 400x400 image。只要改變鑰匙在下面的網址,讓您的靜態地圖圖像:

http://maps.google.com/staticmap?center=35,65&zoom=6&size=400x400&key=<your key here>&format=jpg 

感謝ChrisB您指出跨度參數(我從來沒有看到過)。我更新了我的example與URL的跨度版本:

http://maps.google.com/staticmap?center=35,65&span=5,5&size=400x400&key=<your key here>&sensor=false 

正如你看到的例子,這會產生相同的變焦水平的原始URL,但提供到達那裏(而不是更簡單的方法用手調整縮放並檢查邊緣)。

正如Chris指出縮放級別的粒度將只能近似地圖的邊緣。如果您需要更接近的近似值,我只能建議調整靜態圖像地圖的大小以嘗試更接近您的邊界經度/緯度。

+0

讓我怎麼保證我只得到70 LNG北緯40之間的區域,液化天然氣60 LAT 30? – carrier 2009-06-30 02:45:47

2

如果您需要地圖精確適合特定區域,則不太可能會這樣做,因爲大多數地圖API都具有預先指定的縮放級別,並且可能不會有縮放水平,這將使您完全適合您的區域。

但是,如果您只需要關閉,Google靜態地圖API就提供了一種指定viewport的方法,無需您自己設置縮放級別。所有你需要的是中心點和跨度。如果你想要從SW(30,70)到NE(40,60)的區域,中心將是(35,65),跨度將是(5,5)。

http://maps.google.com/staticmap?center=35,65&span=5,5&size=400x400&key=MAPS_API_KEY&sensor=false 

請注意,根據請求的圖像大小,您將得到不同的結果。

相關問題