xxxxxxxxxx
54
let shapes = [];
function setup() {
createCanvas(300, 300);
generatePattern();
}
function generatePattern() {
let rows = 15;
let cols = 15;
let spacing = width / (cols + 1);
for (let i = 1; i <= rows; i++) {
for (let j = 1; j <= cols; j++) {
let y = j * spacing;
let x = i * spacing;
let size = random(19, 10);
let shapeType = int(random(3));
shapes.push({x: x, y: y, size: size, shapeType: shapeType});
}
}
drawPattern();
}
function drawPattern() {
background(255);
for (let shape of shapes) {
let r = random(100);
let g = random(200);
let b = random(920);
fill(r, g, b, 100);
switch (shape.shapeType) {
case 0:
ellipse(shape.x, shape.y, shape.size, shape.size);
break;
case 1:
rectMode(CENTER);
rect(shape.x, shape.y, shape.size, shape.size);
break;
case 2: // triangle
let halfSize = shape.size / 2;
triangle( shape.x - halfSize , shape.y + halfSize,
shape.x, shape.y - halfSize ,
shape.x + halfSize , shape.y + halfSize);
break;
}
}
}