intersection of two triangles

11 views (last 30 days)
Sososasa
Sososasa on 3 Apr 2014
Commented: Yash Jangir on 21 Aug 2020
Hi,
I have 2 triangles and I would like to know if they are inside each others or they intersect. Like the picture How I can do that ? I read about polyxpoly but to be honest I don't understand how to use it in this scenario.

Accepted Answer

Marta Salas
Marta Salas on 3 Apr 2014
% this define the vertexes (x,y) of first triangle
trian1x =[ 0 0.5 1 0];
trian1y =[ 0 1 0 0];
% this define the vertexes (x,y) of second triangle
trian2x =[ 0 0.25 0.5 0];
trian2y =[ 0 0.5 0 0];
% (xi,yi) are the intersection points
[xi,yi] = polyxpoly(trian1x,trian1y,trian2x,trian2y,'unique');
figure,
plot(trian1x,trian1y,'b')
hold on
plot(trian2x,trian2y,'r')
hold on
plot(xi,yi,'*g')
  5 Comments
Ines
Ines on 19 Apr 2016
Hi If I have the vertexes of two triangles, how can I check if they intersect or not? I need a function that just gives me true if they intersect and false if not. Thanks
Yash Jangir
Yash Jangir on 21 Aug 2020
what if there are no intersection points but the triangle is completely inside the other triangle?

Sign in to comment.

More Answers (1)

Rushabh Khattri
Rushabh Khattri on 22 Aug 2017
I am getting this error :- Undefined function 'polyxpoly' for input arguments of type 'double'.
  2 Comments
Jan
Jan on 22 Aug 2017
The first point to start is asking an internet search engine for this term: "Matlab polyxpoly". You will find out, that this command belongs to the Mapping Toolbox: https://www.mathworks.com/help/map/ref/polyxpoly.html. It seems like you do not have a license for this toolbox and then you need a different solution. Please open a new thread then.
John D'Errico
John D'Errico on 22 Aug 2017
This is not an answer. It is only a new question, but resurrecting a zombie question, that is only partially related.

Sign in to comment.

Products

Community Treasure Hunt

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

Start Hunting!