Triangle: Delaunay triangulations (original) (raw)

Generating Delaunay triangulations

Triangle's default behavior is to find theDelaunay triangulation of a set of vertices. Store the vertices in a .node file, such as <spiral.node>, illustrated below. The command

triangle spiral

produces the Delaunay triangulation, also illustrated below.

To triangulate aPSLGinstead, describe the geometry of the region you wish to mesh in a .poly file, such as <face.poly>, illustrated below. Use the-p switch to specify that the input is a PSLG (.poly file) rather than a vertex set (.node file). The command

triangle -p face

will produce theconstrained Delaunay triangulation, with holes and concavities removed. (The mouth and eye holes are specified in the input file; the concavities are removed automatically.)

The automatic removal of concavities from the triangulation will be detrimental if you have not taken care to surround the area to be triangulated with segments. In the next example, the input file<box.poly> defines an open region, so the-c switch must be used to prevent the automatic removal of concavities (which would eliminate the whole triangulation).

triangle -pc box

produces the constrained Delaunay triangulation illustrated below. The -c switch causes Triangle to triangulate the convex hull of the PSLG.

A conforming constrained Delaunay triangulationof a PSLG can be generated by use of the-q,-a, or-u switch, in addition to the -p switch. If you don't wish to enforce any angle or area constraints, use `-q0', which requests quality meshing with a minimum angle of zero. The result is demonstrated below.

triangle -pq0 face

A conforming Delaunay triangulationof a PSLG can be generated as above, with the addition of the -D switch to ensure that all the triangles of the final mesh are Delaunay (and not just constrained Delaunay).

triangle -pq0L face


Return to Triangle home page.