Delaunay3 broken in matlab?

Alec Jacobson

December 19, 2010

weblog/

I've been messing around with 3D tetrahedral meshes in matlab. The function delaunay3 is supposed to take a list of 3D positions and return the delaunay tessellation of those points with tetrahedra. The output looks okay at first glance using the tetramesh function. But when I started processing these tet meshes I noticed significant problems. The tets don't actually fill the volume and seem to wildly intersect eachother. You can see this in the tetramesh plot, too: matlab delaunay3 broken I am asking it to delaunay tessellate a regular grid where I break the rule of no more than 4 vertices on a sphere. Figures that matlab should handle this case gracefully, but okay. Good to know now that it doesn't. It doesn't even return tets flattened into triangles, its just contradictory, self-intersecting tets... It seems matlab is already on this and I just need to upgrade. The newest version of matlab has replaced delaunay3 (QHull) with DelaunayTri (CGAL).