EaseBackInOut method

double EaseBackInOut(
  1. num t,
  2. num b,
  3. num c,
  4. num d,
)

Back In Out

Implementation

double EaseBackInOut(num t, num b, num c, num d) => run(
  () => _debugLabel('EaseBackInOut', t, b, c, d),
  () {
    num s = 1.70158;
    if ((t/=d/2.0) < 1.0)
    {
      s *= 1.525;
      return (c/2.0*(t*t*((s + 1.0)*t - s)) + b);
    }

    final postFix = t-=2.0;
    s *= 1.525;
    return (c/2.0*((postFix)*t*((s + 1.0)*t + s) + 2.0) + b);
  },
);