updateVelocity method
根据当前位置、目标位置和帧间隔计算新速度。
Implementation
double updateVelocity({
required double currentVelocity,
required double deltaTime,
required double currentPosition,
required double targetPosition,
}) {
final velocityDecayFactor = 1 - _dampingCoefficient * deltaTime;
final springIncrease =
_stiffnessOverMass * (targetPosition - currentPosition) * deltaTime;
return currentVelocity * velocityDecayFactor + springIncrease;
}