xxxxxxxxxx
45
balls = [];
posSun = 0;
function setup() {
createCanvas(600, 600);
posSun = createVector(300, 300);
}
function draw() {
background(0, 100);
circle(width / 2, height / 2, 50);
for (let i = 0; i < balls.length; i++) {
let b = balls[i];
let force = p5.Vector.sub(posSun, b.p);
let intensity = 0.0003;
b.acc = force.mult(intensity);
console.log(intensity);
b.update();
}
}
class Ball {
constructor(x, y, na, nb) {
this.p = createVector(x, y);
this.vel = createVector(na, nb);
this.acc = createVector(0, 0);
}
update() {
this.vel.add(this.acc);
this.p.add(this.vel);
//console.log(this.vel.x, this.acc.x);
circle(this.p.x, this.p.y, 20);
}
}
function mousePressed() {
let angle = random();
let va = sin(angle);
let vb = sin(angle);
let intensity = random(1.5, 4);
balls.push(
new Ball(mouseX, mouseY, va * intensity, vb * intensity)
);
}