22 lines
521 B
JavaScript
22 lines
521 B
JavaScript
var b1 = 4 / 11,
|
|
b2 = 6 / 11,
|
|
b3 = 8 / 11,
|
|
b4 = 3 / 4,
|
|
b5 = 9 / 11,
|
|
b6 = 10 / 11,
|
|
b7 = 15 / 16,
|
|
b8 = 21 / 22,
|
|
b9 = 63 / 64,
|
|
b0 = 1 / b1 / b1;
|
|
|
|
export function bounceIn(t) {
|
|
return 1 - bounceOut(1 - t);
|
|
}
|
|
|
|
export function bounceOut(t) {
|
|
return (t = +t) < b1 ? b0 * t * t : t < b3 ? b0 * (t -= b2) * t + b4 : t < b6 ? b0 * (t -= b5) * t + b7 : b0 * (t -= b8) * t + b9;
|
|
}
|
|
|
|
export function bounceInOut(t) {
|
|
return ((t *= 2) <= 1 ? 1 - bounceOut(1 - t) : bounceOut(t - 1) + 1) / 2;
|
|
}
|