2015-10-29 42 views
0

我需要繪製多邊形只有四個座標是在加載地圖的變焦13另一方面的四個角落獲取整個地圖的座標顯示給用戶。 (用戶在地圖上繪製多邊形搜索特定區域,但如果他/她不繪製多邊形,我想爲他/她繪製投影地圖大小的多邊形並顯示結果。)如何獲得谷歌地圖角的座標?

回答

2

在變焦創建地圖:13

var map = new google.maps.Map(document.getElementById("map"), { 
    center: {lat: 51.561162, lng: -0.163331}, 
    zoom: 13 
}); 

然後使用map.getBounds()獲得可見地圖的LatLngBounds。

var bounds = map.getBounds(); 

然後,您可以使用它來獲取西南部和東北角落的經緯度座標:

var NECorner = bounds.getNorthEast(); 
var SWCorner = bounds.getSouthWest(); 

然後你就可以使用它們來爲其他兩個角計算出座標:

var NWCorner = new google.maps.LatLng(NECorner.lat(), SWCorner.lng()); 
var SECorner = new google.maps.LatLng(SWCorner.lat(), NECorner.lng()); 

最後繪製多邊形,採用那些角部爲paths數組:

var polygon = new google.maps.Polygon({ 
    map: map, 
    paths: [NWCorner, NECorner, SECorner, SWCorner], 
    fillColor: 'red', 
    fillOpacity: 0.7 
});