fractalkitty looking for math? fractalkitty.com

early works

LaserPointer

#random#interactive#animation

eyeArrayXeyeArrayYeyeArrayDeyeArrayCmakeEyesaddEye

let n = 1;
let eyeArrayX = [];
let eyeArrayY = [];
let eyeArrayD = [];
let eyeArrayC = [];
function setup() {
  createCanvas(600, 600);
  makeEyes(n)
}

function draw() {
  w = width/2;
  translate(w,w)
  background(0);
  for (let i=0;i<n;i++){
    dy = eyeArrayY[i]-(mouseY-width/2)
    dx = eyeArrayX[i]-(mouseX-width/2);
    x = eyeArrayX[i]-dx*(eyeArrayD[i]/width/2);
    y = eyeArrayY[i]-dy*(eyeArrayD[i]/width/2);
    circle(eyeArrayX[i],eyeArrayY[i],eyeArrayD[i]*1.5)
    fill(abs(eyeArrayX[i]),eyeArrayD[i],eyeArrayC[i])
    circle(x,y,eyeArrayD[i]/2)
    fill(0)
    circle(x,y,eyeArrayD[i]/2.5)
    fill(255)
    circle(x-eyeArrayD[i]/15,y-eyeArrayD[i]/15,eyeArrayD[i]/6)
    fill(255)
  }
  fill(255, 3, 104)
  circle(mouseX-w,mouseY-w,20)
  fill(255)
}

function makeEyes(n){
  for (let i = 0;i<n;i++  ){
    eyeArrayX[i] = random(-width/2,width/2);
    eyeArrayY[i] = random(-width/2,width/2);
    eyeArrayD[i] = random(5,width/5);
    eyeArrayC[i] = random(0,255)
  }
}

function addEye(){
  n = n+1;
  append(eyeArrayX, random(-width/2,width/2));
  append(eyeArrayY, random(-width/2,width/2));
  append(eyeArrayD, random(5,width/5));
  append(eyeArrayC, random(0,255));
}

function mousePressed(){
  addEye();
}