xxxxxxxxxx
42
let angles = []; let r = 10;
let shift = 4; let num = 15; let t = 10;
let cols = 10; let rows = 10;
let xoff = 0; let yoff = 0;
let offset = 25;
function setup() {
createCanvas(400, 400);
angleMode(DEGREES);
xoff = 0;
for (let i=0; i<cols; i++) {
angles[i] = [];
yoff = 0;
for (let j=0; j<rows; j++) {
angles[i][j] = 360*noise(xoff, yoff);
yoff+=0.4;
}
xoff+=0.4;
}
}
function draw() {
background(0);
noStroke();
for (let i=0; i<cols; i++) {
for (let j=0; j<rows; j++) {
push();
translate(40, 40);
for (let k=0; k<num; k++) {
if(k == num-1) {
fill(255);
} else {
fill(255, k*255/num);
}
ellipse(i*offset + r*k/num*sin(angles[i][j] + t*k) + k*i*0.5, j*offset + r*k/num*cos(angles[i][j] + t*k) + k*j*0.5, k+10, k+10);
}
angles[i][j] += 6;
pop();
}
}
}