qreal value(qreal t) { qreal a = (_a < 0) ? 1.0f : _a; switch(_t) { case In: return easeInBounce(t, a); case Out: return easeOutBounce(t, a); case InOut: return easeInOutBounce(t, a); case OutIn: return easeOutInBounce(t, a); default: return t; } }
double valueForProgress ( double a_fProgress ) const { double fAmplitude = (m_fAmplitude < 0.0) ? 1.0 : m_fAmplitude; switch ( m_eType ) { case In: return easeInBounce ( a_fProgress, fAmplitude ); case Out: return easeOutBounce ( a_fProgress, fAmplitude ); case InOut: return easeInOutBounce ( a_fProgress, fAmplitude ); case OutIn: return easeOutInBounce ( a_fProgress, fAmplitude ); default: return a_fProgress; } }
static qreal easeInOutBounce(qreal t) { static qreal a = 1; return easeInOutBounce(t, a); }