mat*_*lin 1 javascript openlayers openlayers-3
我一直在研究openlayers的动画功能,并且可以看到使用以下命令缩放到给定的点和分辨率有多么简单
view.animate({
center: position,
zoom: 11
});
Run Code Online (Sandbox Code Playgroud)
但是我不知道如何制作动画
map.getView().fit(extent, map.getSize());
Run Code Online (Sandbox Code Playgroud)
有人可以给我一些指示吗?
提前致谢
fit函数确实支持Openlayers 3中的动画。第三个参数是一个对象,可以在其中设置不同的选项(持续时间,缓动...),您可以轻松地做到这一点:
map.getView().fit(extent, map.getSize(), { duration: 1000 });
Run Code Online (Sandbox Code Playgroud)
您可以查看Openlayers 3 API,以了解有关options参数的更多详细信息。
我还创建了一个jsFiddle示例,您可以在其中看到它的工作原理。
小心!OpenLayers v4.0.1在这里:
在最近发布的Openlayers版本中,与该方法有关的某些事情已更改,因此,如果您阅读最新的Openlayers API中的fit函数文档,您会发现现在只允许2个参数,因为大小不需要作为参数传递(但是,可以在options参数中分配)。因此,适用于Openlayers v4.0.1的示例如下所示:
map.getView().fit(extent, { duration: 1000 });
Run Code Online (Sandbox Code Playgroud)
请务必牢记这些更改,因为在您使用官方API时可能会引起混淆。
| 归档时间: |
|
| 查看次数: |
2903 次 |
| 最近记录: |