是否有任何簡單的方法可以使用Google Maps API v3查找多段線的包圍框?我正在研究一個項目,我需要在數據從地圖中添加和刪除時更新邊界。這很簡單,只要做bd.extend(point),其中bd是綁定對象,point是LatLng對象。問題是當我開始刪除數據時,我希望它能夠改變邊界並放大回去。是否有內置的函數可以做到這一點,還是我需要爲自己寫點東西?在Google Maps API v3中獲取polyine的界限
5
A
回答
4
v2 API有GPolyline.getBounds()
方法來做到這一點。但是,似乎v3 API中沒有等效的方法。
您可能想要通過覆蓋您的Polyline
MVCObject
的changed
屬性來處理此問題,以便在對象更改狀態時得到通知。然後,您可以使用您建議的LatLngBounds.extend()
方法計算邊界框。
我認爲谷歌有意從v3 API中省略了這些方法,試圖保持API輕量級。類似的省略discussed a couple of days ago on Stack Overflow是GMap2.clearOverlays()
方法。
2
您還可以擴展Polyline類以添加您自己的getBounds方法。如何做到這一點,請參閱google maps api v3: add point on polyline beetwen two existing points on click polyline event。
7
在oenpelli的解決方案上進行了擴展,這是我用來從V2 API重新創建功能的擴展getBounds()方法。這在我的項目中完美運作。
google.maps.Polyline.prototype.getBounds = function() {
var bounds = new google.maps.LatLngBounds();
this.getPath().forEach(function(item, index) {
bounds.extend(new google.maps.LatLng(item.lat(), item.lng()));
});
return bounds;
};
請記住,這需要在加載API之後添加,因此在您的init方法中。
相關問題
- 1. 重置Google Maps API v3上的界限
- 2. Google Maps v3 API擴展界限map.fitBounds無法擴展界限
- 3. 在Google Maps API V3中獲取非包裹地圖邊界
- 4. Google Maps API V3:向全世界展示
- 5. Google Maps API v2 vs Google Maps API v3?
- 6. Google Maps API V3上的限制標記
- 7. google-maps-api-v3 getProjection
- 8. Google Maps API V3:fromContainerPixelToLatLng
- 9. Google Maps API v3 - maxZoomService
- 10. Google Maps API v3 BrowserIsCompatible
- 11. Google Maps API v3:處理使用限制
- 12. 在Google Maps API v3中獲取InfoWindow的錨點對象
- 13. 在google maps api v3中獲取dragend標記的舊位置(javascript)
- 14. Google Maps API V3 - Javascript問題
- 15. Google Maps API v3不顯示
- 16. Google Maps API V3返回610,0,0,0
- 17. Google Maps API V3和Internet Explorer
- 18. Google Maps API V3 - Internet Explorer
- 19. Google maps api v3 + marker clusterer:centering map?
- 20. MVC 4和Google Maps API v3
- 21. kml + google maps api v3 + geoxml3
- 22. Google maps API V3方法fitBounds()
- 23. Google Maps API v3 directions.route()請求
- 24. google maps api v3 + infoBubble in markerClusterer
- 25. MarkerLight for Google Maps API v3
- 26. Google Maps API v3覆蓋
- 27. Google Maps API v3 JS map.fitbounds
- 28. Google Maps Api v3 - getBounds is undefined
- 29. Google Maps API v3(PHP&Javascript)
- 30. Google Maps Api v3 with jQuery toggle