我有以下代码,为OpenLayers 3.20前编写:
fitViewToFeature: function (viewer, feature) {
var pan = ol.animation.pan({
source: viewer.olView.getCenter(),
duration: 1000
})
var zoom = ol.animation.zoom({
resolution: viewer.olView.getResolution(),
duration: 1000
})
viewer.olMap.beforeRender(pan, zoom)
viewer.olView.fit(feature.getGeometry(), viewer.olMap.getSize(), {
padding: [ 100, 100, 100, 100 ],
constrainResolution: false,
maxZoom: 4
})
}
我的问题是如何将此函数转换为OpenLayers 3.20中引入的新view.animate()语法?
或者,我是否应该打开GitHub问题并请求将新选项添加到view.animate?
答案 0 :(得分:9)
使用duration
的{{1}}选项,您应该能够以更简单的方式实现相同的动画:
ol.View#fit()
上述内容适用于OpenLayers 4.x。