Find the coordinates of a triangle in a mesh

조회 수: 3 (최근 30일)
Florian Spicher
Florian Spicher 2021년 11월 3일
댓글: Camille Grimaldi 2023년 2월 6일
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
Florian Spicher
Florian Spicher 2021년 11월 3일
Done!
Florian Spicher
Florian Spicher 2021년 11월 3일
편집: Florian Spicher 2021년 11월 3일
Or maybe I misunderstood what you meant since you edited several times your comment, sorry.

댓글을 달려면 로그인하십시오.

채택된 답변

Dave B
Dave B 2021년 11월 3일
편집: Dave B 2021년 11월 3일
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)',:)
ans = 3×3
-1.1902 -0.8650 0 -1.1905 -1.0510 0 -1.3512 -0.9948 0
(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
Florian Spicher
Florian Spicher 2021년 11월 4일
Aha! Now it’s 100% clear! Well, thank you very much :) you really helped
Camille Grimaldi
Camille Grimaldi 2023년 2월 6일
Hi
How did you get the xy for each triangle in the first place?
Cheers
Camille

댓글을 달려면 로그인하십시오.

추가 답변 (0개)

카테고리

Help CenterFile Exchange에서 Surface and Mesh Plots에 대해 자세히 알아보기

Community Treasure Hunt

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

Start Hunting!

Translated by