summaryrefslogtreecommitdiff
path: root/frontend/_shared/math/point2.js
blob: eeacd91d22a0a51fd03705f6ca3813ca5f48da24 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
function point2(x = 0, y = 0) {
    return { x: x, y: y };
}

function distanceFromPoint2ToLine2(pPoint, pLine) {
    // Check out this wikapedia article for more information:
    // https://en.wikipedia.org/wiki/Distance_from_a_point_to_a_line
    var x0 = pPoint.x,
        y0 = pPoint.y,
        x1 = pLine.start.x,
        y1 = pLine.start.y,
        x2 = pLine.end.x,
        y2 = pLine.end.y;

    return Math.abs((x2 - x1) * (y1 - y0) - (x1 - x0) * (y2 - y1)) / Math.sqrt(Math.pow(x2 - x1, 2) + Math.pow(y2 - y1, 2));
}