p5js/1001.醉汉模拟.js
2022-12-10 17:35:14 +08:00

36 lines
693 B
JavaScript

let walker;
function setup() {
createCanvas(400, 400);
background(255);
strokeWeight(2);
stroke("rgba(0,0,0,0.4)");
walker = new Walker(200, 200);
}
function draw() {
for (let i = 0; i < 10; i++) {
walker.move();
walker.show();
}
}
class Walker {
constructor(x, y) {
this.pos = createVector(x, y);
this.count = 0;
}
move() {
let step = p5.Vector.random2D().mult(2);
this.pos.add(step);
if (this.count++ > 10000) {
this.pos = createVector(200, 200);
background(255);
this.count = 0;
}
}
show() {
point(this.pos.x, this.pos.y);
}
}