Get unlimited public & private packages + team-based management with npm Teams.Learn more »

@thi.ng/ramp

0.1.1 • Public • Published

@thi.ng/ramp

npm version npm downloads Twitter Follow

This project is part of the @thi.ng/umbrella monorepo.

About

Parametric interpolated 1D lookup tables for remapping values.

Status

ALPHA - bleeding edge / work-in-progress

Installation

yarn add @thi.ng/ramp

Package sizes (gzipped): ESM: 0.9KB / CJS: 1.0KB / UMD: 1.1KB

Dependencies

Usage examples

Several demos in this repo's /examples directory are using this package.

A selection:

ramp-synth

screenshot

Unison wavetable synth with waveform editor

Live demo | Source

API

Generated API docs

import { linear, hermite } from "@thi.ng/ramp";
 
const rampL = linear([[0.1, 0], [0.5, 1], [0.9, 0]]);
const rampH = hermite([[0.1, 0], [0.5, 1], [0.9, 0]]);
 
for(let i = 0; i <= 10; i++) {
    console.log(
        i / 10,
        rampL.at(i / 10).toFixed(2),
        rampH.at(i / 10).toFixed(2)
    );
}
 
// 0   0.00 0.00
// 0.1 0.00 0.00
// 0.2 0.25 0.16
// 0.3 0.50 0.50
// 0.4 0.75 0.84
// 0.5 1.00 1.00
// 0.6 0.75 0.84
// 0.7 0.50 0.50
// 0.8 0.25 0.16
// 0.9 0.00 0.00
// 1   0.00 0.00

Authors

Karsten Schmidt

License

© 2019 - 2020 Karsten Schmidt // Apache Software License 2.0

Install

npm i @thi.ng/ramp

DownloadsWeekly Downloads

6

Version

0.1.1

License

Apache-2.0

Unpacked Size

45.3 kB

Total Files

19

Last publish

Collaborators

  • avatar