Skip to content

actionnick/cat-rom-spline

Repository files navigation

Catmull Rom spline interpolation made easy.

Install

$ npm install --save cat-rom-spline

Usage

var catRomSpline = require('cat-rom-spline');

// Points are arrays in the form of [x, y]
var p0 = [0, 0];
var p1 = [5, 5];
var p2 = [5, 10];
var p3 = [15, 20];

// At least 4 points are needed to interpolate
var points = [p0, p1, p2, p3];

// There are optional configurations that you can make but they aren't required
// If 'samples' is not passed in the interpolation will sample a sensible amount
// of points based on how far away control points are
var options = {
  samples: 50,
  knot: 0.5 // Default is 0.5, Ranges from 0 - 1, 1 being stiffer curves.
};

var interpolatedPoints = catRomSpline(points, options);

License

MIT © Nick Schaubeck

About

Catmull Rom spline interpolation made easy.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages