xxxxxxxxxx
53
// Mutual Attract// The Nature of Code
let movers = [];
function setup() {
createCanvas(600, 600);
// movers[0] = new Mover(300, 200, 0, 5, 10);
// movers[1] = new Mover(100, 200, 0, -5, 10);
// movers[2] = new Mover(200, 300, -5, 0, 10);
// movers[3] = new Mover(200, 100, 5, 0, 10);
let total = 150;
for (let i = 0; i < total; i++) {
let pos = p5.Vector.random2D();
pos.mult(random(100,150));
let vel = pos.copy();
vel.setMag(10);
vel.rotate(PI/2);
movers.push(new Mover(pos,vel,10));
}
background(0);
}
function mousePressed() {
movers.push(new Mover(mouseX-width/2,mouseY-height/2,random(-5,5),0,10));
}
function draw() {
background(0);
translate(width/2,height/2);
//clear();
for (let mover of movers) {
for (let other of movers) {
if (mover !== other) {
mover.attract(other);
stroke(255);
// line(mover.pos.x, mover.pos.y, other.pos.x, other.pos.y)
}
}
}
for (let mover of movers) {
mover.update();
mover.show();
// attractor.attract(mover);
}
}