как автоматически масштабировать/панорамировать все объекты в векторном слое?

Используя Openlayers, я хотел бы инициализировать карту в положении, в котором она показывает все функции векторного слоя. Как это сделать?


person jperelli    schedule 18.10.2012    source источник


Ответы (2)


Это немного резко/грубо

map.zoomToExtent(yourVectorLayer.getDataExtent());

Это может быть более плавным

map.panTo(yourVectorLayer.getDataExtent().getCenterLonLat());
map.zoomTo(yourVectorLayer.getDataExtent().getZoomExtent());
person Community    schedule 18.10.2012

С OpenLayers 5.3.3 я использую этот фрагмент кода:

const extent = vectorLayer.getSource().getExtent();
map.getView().fit(extent, map.getSize());
person slartidan    schedule 30.07.2019