map-number
Version:
processing/p5.js map like function, including floating point numbers support
37 lines (29 loc) • 964 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); };
}
exports.create = create;
exports.floor = floor;
exports.limit = limit;
exports.map = map;
exports.round = round;
exports.wrap = create;
//# sourceMappingURL=map.cjs.js.map