Updated 15 Jan 2009
%inside_triangle is used to check if a point P is inside
%the triangle P1P2P3 or not.
%Inputs: P, P1, P2 and P3 are vectors of length 2 or three of the
% form [x y z] or [x y]
%True=1 => P is on or inside P1P2P3
%True=0 => P is outside P1P2P3
%True=inside_triangle([0.5 0.5],[0 0],[0 2],[2 0]);
%The following algorithm is implemented
% If P is ON or INSIDE the triangle
% Area(PP1P2) + Area(PP2P3) + Area(PP3P1) = Area(P1P2P3)
% If P is OUTSIDE then,
% Area(PP1P2) + Area(PP2P3) + Area(PP3P1) > Area(P1P2P3)
% Area of a triangle can be found using the determinant:
% Area = abs(1/2 * |x1 y1 1| )
% |x2 y2 1|
% |x3 y3 1|
Nassim Khaled (2023). inside triangle (https://www.mathworks.com/matlabcentral/fileexchange/22690-inside-triangle), MATLAB Central File Exchange. Retrieved .
MATLAB Release Compatibility
Platform CompatibilityWindows macOS Linux
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!Start Hunting!
Discover Live Editor
Create scripts with code, output, and formatted text in a single executable document.