Untitled.png

let speed = 8;
let d = 50;
let ellipses = [];
let numEllipses = 5;

function setup() {
  createCanvas(400, 400);
  colorMode(HSB, 360, 100, 100, 5);

  for (let j = 0; j < numEllipses; j++) {
    ellipses.push({ x: random(width), y: random(height), hue: random(360) });
  }
}

function draw() {

  for (let e of ellipses) {
    e.hue = (e.hue + 0.1) % 360;
    e.x = constrain(e.x + random(-speed, speed), 0, width);
    e.y = constrain(e.y + random(-speed, speed), 0, height);

    noStroke();
    fill(e.hue, 100, 100, 0.5);
    ellipse(e.x, e.y, d, d);
  }
}

Setup

  1. createCanvas(400, 400);
  2. colorMode(HSB, 360, 100, 100, 5);

draw

  1. for (let j = 0; j < numEllipses; j++) { ... }

    icm midterm.mov