xxxxxxxxxx
52
let tr;
let fp;
let points = [];
function setup() {
createCanvas(400, 400);
tr = new Triangle();
tr.addVertex(new Position(width/2, 0));
tr.addVertex(new Position(width, height));
tr.addVertex(new Position(0, height));
fp = new Position(-1, height/2)
}
function draw() {
background(220);
tr.show();
for (let i = 0; i < 3; i++) {
if (fp.x != -1) {
fill(0);
ellipse(fp.x, fp.y, 5, 5)
fill(255)
let newestPoint = points.length > 0 ? points[points.length-1] : fp
// add new points
let randomVertex = random(tr.vertices);
let diffx = randomVertex.x - newestPoint.x
let diffy = randomVertex.y - newestPoint.y
points.push(new Position(newestPoint.x + diffx/2, newestPoint.y + diffy/2))
// show points
for (let i = 0; i < points.length; i++) {
fill(0)
ellipse(points[i].x, points[i].y, 1, 1)
fill(255)
}
}
}
}
function mousePressed() {
fp = new Position(mouseX, mouseY);
points = []
}