Android上touchmove后的惯性运动方程是什么?

xuo3flqw  于 2023-06-27  发布在  Android
关注(0)|答案(1)|浏览(120)

我需要再现一个惯性触摸移动,如果我做简单的抛物线方程,移动似乎与在Android(和iPhone)上观察到的不同。
他们使用的方程式是什么?

deikduxw

deikduxw1#

我做了实验来反求它们的运动方程。关键是它们似乎遵循滚动时间= K v0(K常数和v0初始速度),它们遵循D = K2 * v0^2,就像有重力反对运动一样。但是在滚动时间/2处的移动速度明显慢于用抛物线方程获得的移动速度。我注意到,一旦X和Y缩放,所有v0的曲线总是相同的。
在用多项式回归进行了一些长时间的实验之后,我确定了瞬时位置的近似方程:
P(t,v0)= v0 * t-7.1397 * t^2 + 25.08/v0 * T^3 - 37.43 *(t^4)/v0^2
v0是以页/秒为单位的初始速度(似乎在大约12处封顶); P-即时位置(以页为单位); t从touchend事件开始的时间(以s为单位),因此当前速度为
v(t,v0)= v0 - 14.278 * t +75.24/v0 * t^2 - 149.72 *(t^3)/v0^2,当v达到0时,运动停止。
最后,在最后测量的速度和起始惯性速度v0之间应用x2系数似乎更好(不确定它们是否如此)
这不是一个很大的工具,但使用它将使一个较慢的运动结束和较少不受控制的快速在中间。
我在https://github.com/utsb-fmm/MobileLikeScroller上做了一个脚本,在这里演示了https://utsb-fmm.github.io/MobileLikeScroller/

相关问题