web-dev-qa-db-ja.com

ZoomToExtent OpenLayers 3

OpenLayers 2には非常に便利なmap.zoomToExtent(extent)機能がありました。 OpenLayers 3に類似したものはありますか? source.getExtent()で関心のある範囲を取得できますが、その範囲を「ズームレベル」として適用する方法がわかりません。

21
Tyler DeWitt

以下にリンクされている関数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()); 
48
Tyler DeWitt

OpenLayers 4.xでは、これは依然として有効なソリューションです。

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

マップ上にポイントがない場合、コンソールエラーを防ぐために、オプションの2番目のパラメーターを設定してください。

3
Naderio

OpenLayers 4.xでは、次のメソッドが便利だとわかりました。

map.getView().setCenter([x, y]); map.getView().setZoom(z);

ここで、xyzは、ズームする座標です。

1
juminet