tetrahedrizing a mesh

1.3k views Asked by At

I am looking for an algorithm that receives a 3d surface mesh (i.e comprised of 3d triangles that are a discretization of some manifold) and generates tetrahedra inside the mesh's volume.

i.e, I want the 3d equivalent to this 2d problem: given a closed curve, triangulate it's interior.

I am sorry if this is unclear, it's the best way I could think of explaining it.

For the 2d case there's Triangle. For a 3d case I could find none.

3

There are 3 answers

1
olamundo On BEST ANSWER

I found GRUMMP which seems to answer all the needs mentioned in the question, and more...

0
fatalaccidents On

I haven't had any experience using GRUMMP, but as far as a 3D version of triangle there is tetgen. If you know the triangle switches it is built to resemble it. It also has fairly decent documentation and a python wrapper for it and triangle.

http://wias-berlin.de/software/tetgen/

http://mathema.tician.de/software/meshpy/

4
Nico Schlömer On

pygalmesh (a project of mine based on CGAL) can do just that.

pygalmesh-volume-from-surface elephant.vtu out.vtk --cell-size 1.0 --odt

https://github.com/nschloe/pygalmesh/#volume-meshes-from-surface-meshes

enter image description here