2014-05-15 87 views
18

OpenLayers 2有一個非常有用的map.zoomToExtent(extent)功能。 OpenLayers 3中有類似的東西嗎?我可以通過source.getExtent()獲得感興趣的程度,但我無法弄清楚如何將該程度作爲「縮放級別」應用。ZoomToExtent OpenLayers 3

+1

你有沒有試過http://ol3js.org/en/master/apidoc/ol.control.ZoomToExtent.html – sfletche

+0

@sfletche原來是正確的答案。如果您想將您的評論更改爲答案,我會選擇它,以便您可以獲得令人敬畏的互聯網點。 –

回答

43

去關閉該功能sfletche鏈接到:

var extent = source.getExtent(); 
map.getView().fitExtent(extent, map.getSize()); 

編輯2013年7月23日

顯然fitExtent已被棄用。應該ol.View.fit,所以一些臨客這個(untestesd):

var extent = source.getExtent(); 
map.getView().fit(extent, map.getSize()); 
+0

感謝信用@tylerdewitt。我的反應太慢,所以我會給你一些互聯網點。 :) – sfletche

+0

真的很棒的解決方案。它也解決了我的問題 – imdadhusen

+0

View的fitExtent()似乎在3.4中被棄用 – user1702401

0

用的OpenLayers 4.x的這仍然是一個有效的解決方案:

map.getView().fit(source.getExtent(), map.getSize()); 

務必設置可選的第二個參數,以防止控制檯錯誤,如果地圖上沒有點。