map-number
Version:
processing/p5.js map like function, including floating point numbers support
30 lines (23 loc) • 873 B
JavaScript
function map(num, inMin, inMax, outMin, outMax) {
return (num - inMin) / (inMax - inMin) * (outMax - outMin) + outMin;
}
function floor(num, inMin, inMax, outMin, outMax) {
return Math.floor(map(num, inMin, inMax, outMin, outMax));
}
function round(num, inMin, inMax, outMin, outMax) {
return Math.round(map(num, inMin, inMax, outMin, outMax));
}
function min(num1, num2) {
return num1 < num2 ? num1 : num2;
}
function max(num1, num2) {
return num1 > num2 ? num1 : num2;
}
function limit(num, inMin, inMax, outMin, outMax) {
return max(min(outMin, outMax), min(max(outMin, outMax), map(num, inMin, inMax, outMin, outMax)));
}
function create(func, inMin, inMax, outMin, outMax) {
return function (num) { return func(num, inMin, inMax, outMin, outMax); };
}
export { create, floor, limit, map, round, create as wrap };
//# sourceMappingURL=map.es.js.map