Borrar filtros
Borrar filtros

The problem of finding intersection point of triangle mesh

4 visualizaciones (últimos 30 días)
Vivaldi
Vivaldi el 21 de Nov. de 2019
Comentada: Vivaldi el 25 de Nov. de 2019
Now I have drawn a triangle mesh. (The function to generate image I use are as follows. )I want to ask for the intersection point, as shown in the figure(Red line with the mesh). But I don't know how to solve it.
PS:You can define the expression of a line at will,like "x=5".
If you want, I have some expression here.
Inked LI.jpg
In.jpg
trimesh(face', vertex(1,:), vertex(2,:), vertex(3,:),'LineWidth',1,'EdgeColor','k');
hold off;
vertex0=vertex';
V=vertex0(:,1:2);
x1=V(:,1);
y1=V(:,2);
z1=repmat(-20,1380,1);
tr = triangulation(face',x1,y1,z1); %x1.y1.z1 is a set of three coordinates of vertices
trimesh(tr);
axis equal;
colorbar('vert');
brighten(-0.1);axis on; % 'face' is the index list of triangle patch vertices;'vertex' is the index list of triangle vertex coordinates.
  2 comentarios
darova
darova el 21 de Nov. de 2019
What about in-built function such as polyxpoly?
Vivaldi
Vivaldi el 24 de Nov. de 2019
Thanks for your answer. But I dont know how this function should I use. Cloud you write a function?Sorry to bother you.

Iniciar sesión para comentar.

Respuesta aceptada

darova
darova el 24 de Nov. de 2019
Editada: darova el 24 de Nov. de 2019
To check every edge:
for j = 1:size(face,2)
i1 = 1;
for i2 = [2 3 1]
% checking edges [1 2], [2 3], [3 1]
xx = [V(face(i2,j),1) V(face(i1,j),1)];
yy = [V(face(i2,j),2) V(face(i1,j),2)];
% intersection of edge and line x = [20 -150], y = [-40 -40]
[xc,yc] = polyxpoly(xx,yy,[20 -150],[-40 -40]);
i1 = i1+1;
% if intersection exists
if ~isempty(xc)
plot(xc,yc,'.r')
end
end
end
  1 comentario
Vivaldi
Vivaldi el 25 de Nov. de 2019
Its so cool! Thanks for your answer . Wishing your life delectation!

Iniciar sesión para comentar.

Más respuestas (0)

Categorías

Más información sobre Surface and Mesh Plots en Help Center y File Exchange.

Productos


Versión

R2014b

Community Treasure Hunt

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

Start Hunting!

Translated by