1.0.0 • Published 10 years ago

easiness v1.0.0

Weekly downloads
5
License
ISC
Repository
github
Last release
10 years ago

easiness

...another easing equation library! Why!?

Most easing libraries export functions which take a bunch of arguments, capturing all sorts of wonderful details of an animation, such as start and end values, start and end times, plus the current time. This is a rather complicated way of representing what essentially boils down to a simple interpolation between the values of 0 and 1; anything extra is just noise that distracts from the essence of the calculation. For further information, take a look at Jari Komppa's article Interpolation Tricks where he explains matters much better than I am able.

easiness is a collection of 'pure' easing functions designed to work with domain and range 0..1 - single number in, single number out. Easy-peasy. If you find yourself in a situation where you need to interpolate between other values, each of easiness's functions offers a .mapped() method to derive another single argument function that can map any domain/range you desire.

Installation

$ npm install easiness

Require

var easiness = require('easiness');

API

easiness.$easeFn(x)

Replace $easeFn with one of:

  • linear
  • smooth
  • easeInQuad
  • easeOutQuad
  • easeInOutQuad
  • easeInSine
  • easeOutSine
  • easeInOutSine

easiness.$easeFn.mapped(inStart, inEnd, outStart, outEnd)

Derives a new easing function based on $easeFn that expects an argument in the range inStart..inEnd and interpolates it between outStart..outEnd.

A 2-argument form of mapped() is also available in which inStart and inEnd are assumed to be 0 and 1, respectively. The resulting derived function will interpolate the values in the range 0..1 between outStart and outEnd.

1.0.0

10 years ago

0.0.2

11 years ago

0.0.1

11 years ago