let n, n2;
function setup() {
cnv = createCanvas(500, 500);
background(255);
noStroke();
fill(0, 0, 0, 50);
n = 19;
n2 = 20;
angleMode(DEGREES);
}
function draw() {
translate(width / 2, height / 2);
background(255);
t = frameCount / 2;
fill(0, 0, 0, 5 + 20 * abs(sin(t / 30)));
for (let i = 0; i < n2; i++) {
dance(
10 + i * 10 + 30 * sin(t / 2 + i),
i * 5 + (1000 / n) * abs(sin(t + i) * cos(t / 2 + i)),
i * 137.5 * sin(t / 300) * cos(t / 400)
);
}
}
function dance(r, p, s) {
for (let i = 0; i < n; i++) {
a = (360 / n) * i + s;
circle(r * cos(a), r * sin(a), p);
}
}
function mousePressed() {
if (n < 30) {
n++;
} else {
n = 2;
}
}