98 views (last 30 days)

Show older comments

Good evening everyone

function or coding for finding point is inside triangle or sub triangle or its on edges

thanks for involving your knowledge to be share to answer question

Walter Roberson
on 9 Apr 2016

Redwan Dan comments to John D'Errico:

am not here to prove you any thing and the way your answer and close is not nice treat with me if you don't know just don't comment or close

Roger Stafford
on 9 Apr 2016

Suppose P1 = [x1,y1], P2 = [x2,y2], and P3 = [x3,y3] are row vectors giving the coordinates of the three vertices of a triangle, and P = [x,y] is a row vector for the coordinates of a point P. To determine whether P lies inside the triangle P1P2P3 do this:

P12 = P1-P2; P23 = P2-P3; P31 = P3-P1;

t = sign(det([P31;P23]))*sign(det([P3-P;P23])) >= 0 & ...

sign(det([P12;P31]))*sign(det([P1-P;P31])) >= 0 & ...

sign(det([P23;P12]))*sign(det([P2-P;P12])) >= 0 ;

Point P lies within the triangle if and only if t is true.

Muhamad Amirulfaris Abdullah
on 6 Jul 2019

Hi there. what was the conditional statement that you were reffering to?

Gary Bikini
on 12 Jun 2021

You can use the built-in function

[in,on]=inpolygon(xq,yq,xv,yv)

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!