Divide square faces into triangles
5 ビュー (過去 30 日間)
古いコメントを表示
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 件のコメント
採用された回答
Matt J
2020 年 1 月 3 日
編集済み: Matt J
2020 年 1 月 3 日
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 件のコメント
その他の回答 (1 件)
Matt J
2020 年 1 月 3 日
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 件のコメント
参考
カテゴリ
Help Center および File Exchange で Delaunay Triangulation についてさらに検索
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!