mirror of
https://gitlab.com/MisterBiggs/Resume.git
synced 2025-06-16 01:16:39 +00:00
56 lines
1.3 KiB
JavaScript
56 lines
1.3 KiB
JavaScript
// Gravitational Attraction
|
|
// The Nature of Code
|
|
// The Coding Train / Daniel Shiffman
|
|
// https://youtu.be/EpgB3cNhKPM
|
|
// https://thecodingtrain.com/learning/nature-of-code/2.5-gravitational-attraction.html
|
|
// https://editor.p5js.org/codingtrain/sketches/MkLraatd
|
|
|
|
let movers = [];
|
|
let attractor;
|
|
var canvas;
|
|
|
|
function windowResized() {
|
|
resizeCanvas(windowWidth, windowHeight);
|
|
}
|
|
|
|
function setup() {
|
|
canvas = createCanvas(windowWidth, windowHeight);
|
|
canvas.position(0, 0);
|
|
canvas.style("z-index", "-1");
|
|
|
|
const params = new URLSearchParams(window.location.search);
|
|
|
|
if (params.has("gay")) {
|
|
console.log('The "gay" parameter exists in the URL.');
|
|
movers[0] = new Mover(50, "#D12229");
|
|
movers[1] = new Mover(50, "#F68A1E");
|
|
movers[2] = new Mover(50, "#FDE01A");
|
|
movers[3] = new Mover(50, "#007940");
|
|
movers[4] = new Mover(50, "#24408E");
|
|
movers[5] = new Mover(50, "#732982");
|
|
} else {
|
|
movers[0] = new Mover(50,"red");
|
|
movers[1] = new Mover(60,"white");
|
|
movers[2] = new Mover(40,"blue");
|
|
}
|
|
|
|
background(0);
|
|
}
|
|
|
|
function draw() {
|
|
background(0, 75);
|
|
for (let mover of movers) {
|
|
mover.mouse_mass();
|
|
for (let other of movers) {
|
|
if (mover !== other) {
|
|
mover.attract(other);
|
|
}
|
|
}
|
|
}
|
|
for (let mover of movers) {
|
|
mover.update();
|
|
mover.edges();
|
|
mover.show();
|
|
}
|
|
}
|