Reference map()

map()

Re-maps a number from one range to another.

For example, calling map(2, 0, 10, 0, 100) returns 20. The first three arguments set the original value to 2 and the original range from 0 to 10. The last two arguments set the target range from 0 to 100. 20's position in the target range [0, 100] is proportional to 2's position in the original range [0, 10].

The sixth parameter, withinBounds, is optional. By default, map() can return values outside of the target range. For example, map(11, 0, 10, 0, 100) returns 110. Passing true as the sixth parameter constrains the remapped value to the target range. For example, map(11, 0, 10, 0, 100, true) returns 100.

Examples

Syntax

map(value, start1, stop1, start2, stop2, [withinBounds])

Parameters

value
Number:

the value to be remapped.

start1
Number:

lower bound of the value's current range.

stop1
Number:

upper bound of the value's current range.

start2
Number:

lower bound of the value's target range.

stop2
Number:

upper bound of the value's target range.

withinBounds
Boolean:

constrain the value to the newly mapped range.

Returns

Number: remapped number.
Notice any errors or typos? Please let us know. Please feel free to edit src/math/calculation.js and open a pull request!

Related References