p5((s) => {
let itr;
let c1, c2;
let pat;
let clr = 0;
let bg = getColor();
c1 = s.color(getColor());
c2 = s.color(getColor());
s.setup = function () {
s.createCanvas(W, H);
s.noStroke();
itr = 0;
pat = patern();
s.background(bg);
create_grid(0, 0, W, H, form.n_width);
};
s.draw = function () {
};
const create_grid = (x, y, w, h, n) => {
let w_diff = w / n;
let h_diff = h / n;
s.push();
s.translate(x, y);
for (let i = 0; i < n; i++) {
for (let j = 0; j < n; j++) {
s.fill(pat[itr % pat.length]);
if (s.random() < form.prob) {
create_grid(
w_diff * j,
h_diff * i,
w_diff,
h_diff,
s.floor(s.random(6))
);
} else {
s.rect(
w_diff * j,
h_diff * i + 10 * s.sin(j * form.sin),
w_diff,
h_diff
);
}
if (s.random(1) < form.p_prob) {
pat = patern();
}
itr++;
}
}
s.pop();
itr = 0;
};
})