18 lines
409 B
TypeScript
18 lines
409 B
TypeScript
/**
|
|
* Convert number from one range to another.
|
|
* @example
|
|
* // returns 0.5
|
|
* convertRange(0, [-1, 1], [0, 1]);
|
|
* @param value Value to convert
|
|
* @param r1 Source range
|
|
* @param r2 Target range
|
|
* @returns Value in new range
|
|
*/
|
|
export function convertRange(
|
|
value: number,
|
|
r1: [number, number],
|
|
r2: [number, number],
|
|
) {
|
|
return ((value - r1[0]) * (r2[1] - r2[0])) / (r1[1] - r1[0]) + r2[0];
|
|
}
|