xxxxxxxxxx
22
function setup() {
createCanvas(400, 400);
background(0);
var x1 = 100;
var y1 = 100;
var x2 = 200;
var y2 = 200;
var x3 = 200;
var y3 = 100;
var x4 = 100;
var y4 = 300;
var den = (y4 - y3) * (x2 - x1) - (x4 - x3) * (y2 - y1);
var ua = (x4 - x3) * (y1 - y3) - (y4 - y3) * (x1 - x3);
var ub = (x2 - x1) * (y1 - y3) - (y2 - y1) * (x1 - x3);
ua = ua / den;
ub = ub / den;
var candidate = createVector(x1 + ua * (x2 - x1), y1 + ub * (y2 - y1));
stroke(255);
line(x1, y1, x2, y2);
line(x3, y3, x4, y4);
ellipse(candidate.x, candidate.y, 8, 8);
}