2014-03-13 40 views
0

如何在Google Maps API v3中將設置爲現有對象的邊界(如地面覆蓋圖,矩形等)?Google Maps API set對象的邊界

例如:

// Assuming a map and a rectangle have already been created. 

var newBounds = new google.maps.LatLngBounds(
    new google.maps.LatLng(-20,-10), 
    new google.maps.LatLng(50,30) 
); 
rectangle.setBounds(newBounds); 

是否有一個相當於setBounds()

注意:我可以直接更改recangle的邊界數組,但是隨着Google不斷更改它們的邊界變量鍵,這最終會破壞腳本。

+0

您想爲哪個對象設置邊界? Map有'fitBounds()',矩形有'setBounds()'。 Circle沒有它,但是需要它嗎? GroundsOverlay:如果映射已定義,則再次爲'fitBounds'。自動完成和SearchBox具有'setBounds'。 –

+0

我想設置GroundOverlay的邊界。但是,'fitBounds()'不是'GroundOverlay'對象的有效方法。 – Laurent

回答

0

我已經在GroundOverlay構造考慮看看找到了解決辦法:

var groundOverlay = ... 

var newBounds = new google.maps.LatLngBounds(
    new google.maps.LatLng(-20,-10), 
    new google.maps.LatLng(50,30) 
); 

groundOverlay.set("bounds",newBounds); 
groundOverlay.map_changed(); 
0

如果 - 以任何理由 - 你應該對有感興趣的值來存儲它們並將它們分配給自己的密鑰規範(避免谷歌改變對象的鍵的問題),你可以使用.toString()函數。爲兩個邊界或座標對象工作。