Find the coordinates of a triangle in a mesh
    5 Ansichten (letzte 30 Tage)
  
       Ältere Kommentare anzeigen
    
    Florian Spicher
 am 3 Nov. 2021
  
    
    
    
    
    Kommentiert: Camille Grimaldi
 am 6 Feb. 2023
            I am working with a 2D mesh generated by Gmsh and here I'd like to compute the area of the triangles of in my mesh. What I don't understand is how can I find the coordinates of a given triangle?
In my .m file, I have: msh.nbNod, msh.POS, msh.Max and msh.MIN, msh.LINES, msh.TRIANGLES and msh.PNT.
I think I should somehow use msh.TRIANGLES but I don't get what the numbers listed refer to. If needed, I can post my .m file. Thanks for the help.
3 Kommentare
Akzeptierte Antwort
  Dave B
    
 am 3 Nov. 2021
        
      Bearbeitet: Dave B
    
 am 3 Nov. 2021
  
      It looks to me like msh.TRIANGLES is referring to indices in msh.POS, which like a reasonable way to describe a mesh.
I'd grab the co-ordinates of a triangle's vertices like this:
squareRing;
triangle_ind=500;
msh.POS(msh.TRIANGLES(triangle_ind,1:3)',:)
(Here each row is a vertex, and the columns are x,y,z)
I say it's reasonable, because this is similar to what patch would use (and because max(msh.TRIANGLES(:))==size(msh.POS,1)). 
patch('Faces',msh.TRIANGLES(:,1:3),'Vertices',msh.POS,'FaceColor','none','EdgeColor','r')
Note that in the data file you provided, the third column of msh.POS is all zeros, which I assume means that they are all in a 2-D plane. 
5 Kommentare
  Camille Grimaldi
 am 6 Feb. 2023
				Hi
How did you get the xy for each triangle in the first place?
Cheers
Camille
Weitere Antworten (0)
Siehe auch
Kategorien
				Mehr zu Surface and Mesh Plots finden Sie in Help Center und File Exchange
			
	Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!
