Mesh2Tetra

版本 1.2.0.0 (39.7 KB) 作者: Dirk-Jan Kroon
Convert a closed triangulated mesh to a tetrahedron volume ( like constrained Delaunay )
2.0K 次下载
更新时间 2010/6/18

查看许可证

This function MESH2TETRA converts a triangulated surface mesh into a tetrahedron volume mesh.

Main advantage above existing constrained 3D Delaunay is that it
will never add new boundary points, (useful for active appearance models)
Disadvantage, some highly non-convex surface-shapes cannot be converted.

T=Mesh2Tetra(V,F,options);

inputs,
V : Vertex List N x 3, with x,y,z positions
F : Face List M x 3, with vertex indices
options : Struct with options
options.verbose : if true, show information
options.checkinput : if true, check input mesh on errors

outputs,
T : Tetrahedron List K x 4, with tetrahedron indices


Note!, most functions are also available as c-code (much faster),
run compile_c_files.m to compile the code

How the software works:
- First, normal Delaunay is used to created a tetrahedron convexhull.
Then outside tetrahedrons and tetrahedrons intersecting the boundary
mesh are removed.
- Second, New triangulated surface meshes are constructed for the space
not yet filled by tetrahedrons. After which Delaunay
is done on the new boundary meshes.
- Third, The remaining boundary which cannot be filled using Delaunay
constraints, is filled with a "Boundary collapse method". The Boundary
collapse method merges vertex neighbors, creating tetrahedrons while
making the surface mesh smaller (like a deflating balloon)
- Fourth, It is possible that a part of the boundary mesh is left over which
cannot be filled with tetrahedrons. This is the case if there are no 4
vertices left who can see each other (like a non-convex polygon). In
that case nearby Tetrahedrons are removed creating a new boundary
mesh. And tetrahedron fitting with the boundary collapse methods is
tried again (until success, or a fixed amount of tries).

.
Please leave a comment if you find a bug, like the code, or have a good suggestion.

引用格式

Dirk-Jan Kroon (2024). Mesh2Tetra (https://www.mathworks.com/matlabcentral/fileexchange/27830-mesh2tetra), MATLAB Central File Exchange. 检索时间: .

MATLAB 版本兼容性
创建方式 R2010a
兼容任何版本
平台兼容性
Windows macOS Linux

Community Treasure Hunt

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

Start Hunting!
版本 已发布 发行说明
1.2.0.0

Added some code to correct for mesh intersections, sadly not yet perfect ...

1.1.0.0

Improved help and made input-options work for sub-functions.

1.0.0.0