@wildpeaks/interpolators
TypeScript icon, indicating that this package has built-in type declarations

2.0.0 • Public • Published

Interpolators

Github Release

Typescript classes to interpolate keyframes in the style of VRML interpolators.

Install using:

npm install @wildpeaks/interpolators

ScalarInterpolator

ScalarInterpolator interpolates number values.

Example:

import {ScalarInterpolator} from '@wildpeaks/interpolators';

const interp = new ScalarInterpolator([0, 0.5, 1], [1, 2, 3]);

// First keyframe
interp.setFraction(0);
console.log(interp.getValue()); // 1

// Second keyframe
interp.setFraction(0.5);
console.log(interp.getValue()); // 2

// Interpolated keyframe
interp.setFraction(0.25);
console.log(interp.getValue()); // 1.5

PositionInterpolator2D

PositionInterpolator2D interpolates [number, number] values.

Example:

import {PositionInterpolator2D} from '@wildpeaks/interpolators';

const interp = new PositionInterpolator2D([0, 0.5, 1], [ [1,10], [2,20], [3,30] ]);

// First keyframe
interp.setFraction(0);
console.log(interp.getValue()); // [1, 10]

// Second keyframe
interp.setFraction(0.5);
console.log(interp.getValue()); // [2, 20]

// Interpolated keyframe
interp.setFraction(0.25);
console.log(interp.getValue()); // [1.5, 15]

PositionInterpolator

PositionInterpolator interpolates [number, number, number] values.

Example:

import {PositionInterpolator} from '@wildpeaks/interpolators';

const interp = new PositionInterpolator([0, 0.5, 1], [ [1,10,100], [2,20,200], [3,30,300] ]);

// First keyframe
interp.setFraction(0);
console.log(interp.getValue()); // [1, 10, 100]

// Second keyframe
interp.setFraction(0.5);
console.log(interp.getValue()); // [2, 20, 200]

// Interpolated keyframe
interp.setFraction(0.25);
console.log(interp.getValue()); // [1.5, 15, 150]

Dependencies (0)

    Dev Dependencies (9)

    Package Sidebar

    Install

    npm i @wildpeaks/interpolators

    Weekly Downloads

    1

    Version

    2.0.0

    License

    MIT

    Unpacked Size

    8.97 kB

    Total Files

    4

    Last publish

    Collaborators

    • cecilemuller