DecayAnimation
DecayAnimation is an animation that slows down from initialVelocity as time goes on. DecayAnimation is stateless, and it does not have any concept of lifecycle. It serves as an animation calculation engine that supports convenient query of value/velocity given a play time. To achieve that, DecayAnimation stores all the animation related information: initialValue, initialVelocity, decay animation spec.
Note: Unless there's a need to control the timing manually, it's generally recommended to use higher level animation APIs that build on top DecayAnimation, such as com.jakewharton.mosaic.animation.Animatable.animateDecay, com.jakewharton.mosaic.animation.animateDecay, etc.
Parameters
decay animation that will be used
starting value that will be passed to the decay animation
starting velocity for the decay animation, 0f by default