JSFiddle - React, Tailwind, and code Playground

by YouTingKuo

JavaScript

function line (p1,q1,p2,q2) {
    var x1 = q2 - q1;
    var x2 = p1 - p2;
    var x3 = p2*q1 - p1*q2;
    return [x1,x2,x3];
}

function solve (coeff1, coeff2) {
    var a1 = coeff1[0], b1 = coeff1[1], c1 = coeff1[2];
    var a2 = coeff2[0], b2 = coeff2[1], c2 = coeff2[2];
    
    var use = a2*b1 - a1*b2;
    
    var x = (b2*c1 - b1*c2)/use;
    var y = -(a2*c1 - a1*c2)/use;
    return [x,y];
}

var p1a = [6,-5], p1b = [4,-2];
var p2a = [5,2], p2b = [8,3];

var line1 = line (p1a[0],p1a[1], p1b[0],p1b[1]);
var line2 = line (p2a[0],p2a[1], p2b[0],p2b[1]);
console.log (line1);
console.log (line2);
console.log (solve (line1, line2));