/** * Soften the delta based on previous deltas stored in vel. * * @param[in,out] fdx Delta X, modified in-place. * @param[in,out] fdx Delta Y, modified in-place. */ static void ApplySoftening(DeviceVelocityPtr vel, double *fdx, double *fdy) { if (vel->use_softening) { *fdx = ApplySimpleSoftening(vel->last_dx, *fdx); *fdy = ApplySimpleSoftening(vel->last_dy, *fdy); } }
static void ApplySofteningAndConstantDeceleration( DeviceVelocityPtr vel, int dx, int dy, float* fdx, float* fdy, short do_soften) { if (do_soften && vel->use_softening) { *fdx = ApplySimpleSoftening(vel->last_dx, dx); *fdy = ApplySimpleSoftening(vel->last_dy, dy); } else { *fdx = dx; *fdy = dy; } *fdx *= vel->const_acceleration; *fdy *= vel->const_acceleration; }