Added normalizeArray function

This commit is contained in:
bluesaxman 2022-02-08 12:14:09 -07:00
parent 1d9f4377b1
commit d29d4e9366

View File

@ -120,6 +120,7 @@ class bound {
if (valueArray.length != this.min.length) { return [...this.min.map(v => 0)]; } if (valueArray.length != this.min.length) { return [...this.min.map(v => 0)]; }
return valueArray.map((value,index) => (value - this.min[index])/(this.max[index] - this.min[index])); return valueArray.map((value,index) => (value - this.min[index])/(this.max[index] - this.min[index]));
} }
clamp(valueArray=[...this.min.map(v => 0)]) { clamp(valueArray=[...this.min.map(v => 0)]) {
if (valueArray.length != this.min.length) { return [...this.min.map((v,i) => Math.min(Math.max(0, v), this.max[i]))]; } if (valueArray.length != this.min.length) { return [...this.min.map((v,i) => Math.min(Math.max(0, v), this.max[i]))]; }
return valueArray.map((value,index) => Math.min(Math.max(value,this.min[index]),this.max[index])); return valueArray.map((value,index) => Math.min(Math.max(value,this.min[index]),this.max[index]));
@ -150,3 +151,9 @@ class boundValue {
return this.setValue(this.value+mod); return this.setValue(this.value+mod);
} }
} }
function normalizeArray(array) {
array = Array.isArray(array) ? array.map(e => !isNaN(e) ? e : 0) : [1];
var sum = array.reduce((a,b) => a+b);
return array.map(v => v/sum);
}