【JavaScript】指定の範囲の値を、別の範囲に置き換えたい(再マッピングしたい)とき
【実践したいこと】
何を:ある範囲(たとえば0~7)の値を、別の範囲(たとえば-1~1)の値に置き換えたい。
Pure DataのスライダーやMax/MSPのscaleオブジェクトのような操作が欲しかった。
【ソース】
▾main.js
function mapping (value, minIn, maxIn, minOut, maxOut) { return (value - minIn) * (maxOut - minOut) / (maxIn - minIn) + minOut; } // 0~7を-1~1の範囲に合わせたときのそれぞれの値を出力 for (let i = 0; i < 8; i++) { let val = mapping(i, 0, 7, -1, 1); console.log(val); } // コンソールログ: // -1 // -0.7142857142857143 // -0.4285714285714286 // -0.1428571428571429 // 0.1428571428571428 // 0.4285714285714286 // 0.7142857142857142 // 1