|
|
|
@ -8,8 +8,7 @@ export { identity as linear } from '../internal';
|
|
|
|
*/
|
|
|
|
*/
|
|
|
|
export function backInOut(t) {
|
|
|
|
export function backInOut(t) {
|
|
|
|
const s = 1.70158 * 1.525;
|
|
|
|
const s = 1.70158 * 1.525;
|
|
|
|
if ((t *= 2) < 1)
|
|
|
|
if ((t *= 2) < 1) return 0.5 * (t * t * ((s + 1) * t - s));
|
|
|
|
return 0.5 * (t * t * ((s + 1) * t - s));
|
|
|
|
|
|
|
|
return 0.5 * ((t -= 2) * t * ((s + 1) * t + s) + 2);
|
|
|
|
return 0.5 * ((t -= 2) * t * ((s + 1) * t + s) + 2);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
/** @param {number} t
|
|
|
|
/** @param {number} t
|
|
|
|
@ -61,8 +60,7 @@ export function bounceIn(t) {
|
|
|
|
* @returns {number}
|
|
|
|
* @returns {number}
|
|
|
|
*/
|
|
|
|
*/
|
|
|
|
export function circInOut(t) {
|
|
|
|
export function circInOut(t) {
|
|
|
|
if ((t *= 2) < 1)
|
|
|
|
if ((t *= 2) < 1) return -0.5 * (Math.sqrt(1 - t * t) - 1);
|
|
|
|
return -0.5 * (Math.sqrt(1 - t * t) - 1);
|
|
|
|
|
|
|
|
return 0.5 * (Math.sqrt(1 - (t -= 2) * t) + 1);
|
|
|
|
return 0.5 * (Math.sqrt(1 - (t -= 2) * t) + 1);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
/** @param {number} t
|
|
|
|
/** @param {number} t
|
|
|
|
@ -146,8 +144,7 @@ export function expoOut(t) {
|
|
|
|
*/
|
|
|
|
*/
|
|
|
|
export function quadInOut(t) {
|
|
|
|
export function quadInOut(t) {
|
|
|
|
t /= 0.5;
|
|
|
|
t /= 0.5;
|
|
|
|
if (t < 1)
|
|
|
|
if (t < 1) return 0.5 * t * t;
|
|
|
|
return 0.5 * t * t;
|
|
|
|
|
|
|
|
t--;
|
|
|
|
t--;
|
|
|
|
return -0.5 * (t * (t - 2) - 1);
|
|
|
|
return -0.5 * (t * (t - 2) - 1);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
@ -185,8 +182,7 @@ export function quartOut(t) {
|
|
|
|
* @returns {number}
|
|
|
|
* @returns {number}
|
|
|
|
*/
|
|
|
|
*/
|
|
|
|
export function quintInOut(t) {
|
|
|
|
export function quintInOut(t) {
|
|
|
|
if ((t *= 2) < 1)
|
|
|
|
if ((t *= 2) < 1) return 0.5 * t * t * t * t * t;
|
|
|
|
return 0.5 * t * t * t * t * t;
|
|
|
|
|
|
|
|
return 0.5 * ((t -= 2) * t * t * t * t + 2);
|
|
|
|
return 0.5 * ((t -= 2) * t * t * t * t + 2);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
/** @param {number} t
|
|
|
|
/** @param {number} t
|
|
|
|
@ -212,10 +208,8 @@ export function sineInOut(t) {
|
|
|
|
*/
|
|
|
|
*/
|
|
|
|
export function sineIn(t) {
|
|
|
|
export function sineIn(t) {
|
|
|
|
const v = Math.cos(t * Math.PI * 0.5);
|
|
|
|
const v = Math.cos(t * Math.PI * 0.5);
|
|
|
|
if (Math.abs(v) < 1e-14)
|
|
|
|
if (Math.abs(v) < 1e-14) return 1;
|
|
|
|
return 1;
|
|
|
|
else return 1 - v;
|
|
|
|
else
|
|
|
|
|
|
|
|
return 1 - v;
|
|
|
|
|
|
|
|
}
|
|
|
|
}
|
|
|
|
/** @param {number} t
|
|
|
|
/** @param {number} t
|
|
|
|
* @returns {number}
|
|
|
|
* @returns {number}
|
|
|
|
@ -223,7 +217,3 @@ export function sineIn(t) {
|
|
|
|
export function sineOut(t) {
|
|
|
|
export function sineOut(t) {
|
|
|
|
return Math.sin((t * Math.PI) / 2);
|
|
|
|
return Math.sin((t * Math.PI) / 2);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|