20 lines
584 B
JavaScript
20 lines
584 B
JavaScript
export function clamp(min, input, max) {
|
|
return Math.max(min, Math.min(input, max));
|
|
}
|
|
|
|
export function mapRange(in_min, in_max, input, out_min, out_max) {
|
|
return ((input - in_min) * (out_max - out_min)) / (in_max - in_min) + out_min;
|
|
}
|
|
|
|
export function lerp(start, end, amt) {
|
|
return (1 - amt) * start + amt * end;
|
|
}
|
|
|
|
export function truncate(value, decimals) {
|
|
return parseFloat(value.toFixed(decimals));
|
|
}
|
|
|
|
export function wrapValue(value, lowBound, highBound) {
|
|
const range = highBound - lowBound;
|
|
return ((((value - lowBound) % range) + range) % range) + lowBound;
|
|
}
|