maptalks / maptalks.js

A light and plugable JavaScript library for integrated 2D/3D maps.
https://maptalks.org
BSD 3-Clause "New" or "Revised" License
4.29k stars 502 forks source link

关于滑动释放后的惯性问题 #1398

Open suqiao1 opened 3 years ago

suqiao1 commented 3 years ago

maptalks's version and what browser you use? ----0.49.4

Issue description ----快速滑动后的地图惯性,设置panAnimationDuration参数不起作用,然后在源码的Map.Pan.js的_panAnimation方法中固定写死duration数值,地图滑动释放后并不是按照惯性速度平移,而是以固定速度平移,希望作者能做到一个滑动释放后惯性速度平移

Please provide a reproduction URL (on any jsfiddle like site)

fuzhenn commented 3 years ago

释放移图的源代码在 Map.Drag.js的137行,可以看到缓动时间是动态计算的,不是panAnimationDuration。 移图的缓动方式是在panBy方法,options的easing参数来决定的,默认只设置了duration,没有设置easing,所以是默认的线性缓动。 目前支持的缓动方式在Animation.js的Easing中定义,我感觉你想要的easing方式可能是out。 你可以自己试试调整参数,找到合适的参数了,欢迎提个pr给我。