Divide square faces into triangles
5 views (last 30 days)
Show older comments
Hello,
i have a faces matrix and i want to divide it into triangles
e.g. faces is a 100x4 matrix
and i want the same faces as triangles e.g. 123x3 ?
i tried it with the delaunayTriangulation but it distorts my mesh.
thank you
0 Comments
Accepted Answer
Matt J
on 3 Jan 2020
Edited: Matt J
on 3 Jan 2020
If the vertices of the squares are all pre-ordered in counter-clockwise or clock-wise order, I think you could just do,
Triangulation=[ Faces(:,[1,2,3]) ; Faces(:,[3,4,1])] ;
If the vertices are not pre-ordered, it wouldn't be too difficult to loop through and sort them first.
3 Comments
More Answers (1)
Matt J
on 3 Jan 2020
I think you would have to do the following steps in a loop over all the faces,
- FInd a 2D coordinate system for the plane passing through each face
- Convert the 3D coordinates of each of the faces vertice to 2D coordinates
- Do a 2D Delaunay tringulation
0 Comments
See Also
Categories
Find more on Delaunay Triangulation in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!