Status
|
function pointIsInTriangle( px, py, p0x, p0y, p1x, p1y, p2x, p2y ) { var area = 1/2*(-p1y*p2x + p0y*(-p1x + p2x) + p0x*(p1y - p2y) + p1x*p2y); var s = 1/(2*area)*(p0y*p2x - p0x*p2y + (p2y - p0y)*px + (p0x - p2x)*py); var t = 1/(2*area)*(p0x*p1y - p0y*p1x + (p0y - p1y)*px + (p1x - p0x)*py); return s > 0 && t > 0 && (1-s-t) > 0; }; |