Triangulation Quality Measures

TRIANGULATION_QUALITY is a C++ program which computes and prints quality measures for a given triangulation of a set of points in 2D.

The triangulation is defined by a node file containing the coordinates of nodes, and a triangle file containing sets of 3 or 6 node indices.

The quality measures computed include:

Each quality measure is defined as the minimum of its value over all the triangles; the maximum and best possible value is 1, and the minimum and worst possible value is 0.


triangulation_quality prefix
where prefix is the common filename prefix:


The computer code and data files described and made available on this web page are distributed under the GNU LGPL license.


TRIANGULATION_QUALITY is available in a C++ version and a FORTRAN90 version and a MATLAB version.

Related Data and Programs:

DISTMESH, a MATLAB library which carries out triangular or tetrahedral mesh generation, by Per-Olof Persson and Gilbert Strang.

MESH2D, a MATLAB library which can automatically create a triangular mesh for a given polygonal region, by Darren Engwirda.

TET_MESH_QUALITY, a C++ program which computes quality measures of a tetrahedral mesh.

TRIANGLE is a C program which computes a triangulation of a geometric region.

TRIANGULATION is a C++ library which carries out various operations on order 3 ("linear") or order 6 ("quadratic") triangulations.

TRIANGULATION_NODE_TO_ELEMENT, a C++ program which reads files describing a set of nodes, their triangulation, and the value of one or more quantities at each node, and outputs a file that averages the quantities for each element. This operation in effect creates an "order1" finite element model of the data.

TRIANGULATION_ORDER3 is a directory which contains a description and examples of order 3 triangulations.

TRIANGULATION_ORDER6 is a directory which contains a description and examples of order 6 triangulations.


  1. Marc deBerg, Marc Krevald, Mark Overmars, Otfried Schwarzkopf,
    Computational Geometry,
    Springer, 2000,
    ISBN: 3-540-65620-0.
  2. David Field,
    Qualitative Measures for Initial Meshes,
    International Journal of Numerical Methods in Engineering,
    Volume 47, 2000, pages 887-906.
  3. Joseph ORourke,
    Computational Geometry,
    Second Edition,
    Cambridge, 1998,
    ISBN: 0521649765,
    LC: QA448.D38.
  4. Per-Olof Persson, Gilbert Strang,
    A Simple Mesh Generator in MATLAB,
    SIAM Review,
    Volume 46, Number 2, pages 329-345, June 2004.

Source Code:

Examples and Tests:

ELL3 is a set of nodes in an L-shaped region, which have been arranged into an order 3 triangulation.

HEX_HOLES6 is a set of nodes in an square region, with two hexagonal holes, which have been arranged into an order 6 triangulation.

List of Routines:

You can go up one level to the C++ source codes.

Last revised on 22 August 2009.