如何为ArcGIS JavaScript API 4.x的缩放函数添加动画效果?
在ArcGIS JavaScript SDK 4.x中实现带动画的缩放效果
直接修改view.zoom属性会触发视图的同步比例尺切换,不会启用内置的过渡动画。要实现和原生缩放控件一致的平滑动画效果,需使用视图的goTo()方法——这也是官方缩放控件内部采用的实现方式。
修改后的代码示例
function zoomIn() { view.goTo({ zoom: view.zoom + 1 }); } function zoomOut() { view.goTo({ zoom: view.zoom - 1 }); }
自定义动画参数(可选)
如果需要调整动画的速度、缓动方式等,可以通过goTo()的第二个参数传入配置项:
function zoomInWithCustomAnimation() { view.goTo( { zoom: view.zoom + 1 }, { duration: 600, // 动画持续时长(毫秒) easing: "ease-out", // 缓动函数,可选值包括linear、ease-in、ease-out、ease-in-out等 maxZoom: 18 // 限制最大缩放级别(可选) } ); }
goTo()方法默认启用动画,除非显式在配置项中设置animate: false来关闭。
内容的提问来源于stack exchange,提问作者Robert Smith
相关产品推荐
相关产品推荐

