0
指定されたバウンディングボックスでマップを中央に配置しようとしています。 OpenLayers FAQにも(swissProjectionを使って)その例がありますが、うまくいきません。いくつかのフォーラムで見て、それを動作させる方法を理解できません。openlayers - バウンディングボックスでマップを中央に揃える方法
多分誰かが知っています。ここで
はコードです:
var extent = [-9022321.0707,3022167.2243,-8849726.2608,3148441.1951];
var projection = new ol.proj.Projection({
code: 'EPSG:3857',
extent: extent,
units: 'm'
});
ol.proj.addProjection(projection);
var map = new ol.Map({
layers: [
new ol.layer.Tile({
source: new ol.source.OSM()
})
],
target: 'map',
view: new ol.View({
projection: projection,
center: [0,0],
zoom: 0
})
});
問題を解決し、投影からエクステントオプションを削除するのは、単にline map.getView()。fit(extent)でした。私はそれをテストし、オプションのズームとセンターは、ビューの新しいフィットが境界ボックスによって完全に定義されているため、設定する必要はありません。それは私が最初にゼロに設定した理由です。回答の上部を削除または編集し、解決済みとマークします。ありがとうございました! – krashennikov
いずれかを選択できます。第一と第二の解決策の両方を行う必要はありません。 –