tweenkle
Version:
Lightweight tweening library for all your tweening and animation needs.
18 lines (17 loc) • 686 B
JavaScript
export var In = function In(time, beginningValue, changeValue, duration) {
return -changeValue * (Math.sqrt(1 - (time /= duration) * time) - 1) + beginningValue;
};
export var Out = function Out(time, beginningValue, changeValue, duration) {
return changeValue * Math.sqrt(1 - (time = time / duration - 1) * time) + beginningValue;
};
export var InOut = function InOut(time, beginningValue, changeValue, duration) {
if ((time /= duration / 2) < 1) {
return -changeValue / 2 * (Math.sqrt(1 - time * time) - 1) + beginningValue;
}
return changeValue / 2 * (Math.sqrt(1 - (time -= 2) * time) + 1) + beginningValue;
};
export default {
In: In,
Out: Out,
InOut: InOut
};