@thi.ng/colored-noise
Version:
Customizable O(1) ES6 generators for colored noise
22 lines (21 loc) • 466 B
JavaScript
const preseed = (n, scale, rnd) => {
const state = new Array(n);
for (let i = 0; i < n; i++) {
state[i] = rnd.norm(scale);
}
return state;
};
const sum = (src) => src.reduce((sum2, x) => sum2 + x, 0);
function* interleave(a, b) {
const src = [a[Symbol.iterator](), b[Symbol.iterator]()];
for (let i = 0; true; i ^= 1) {
const next = src[i].next();
if (next.done) return;
yield next.value;
}
}
export {
interleave,
preseed,
sum
};