TRIANGULATION_PLOT
Plot a Triangulation
TRIANGULATION_PLOT
is a C++ program which
plots a triangulation.
TRIANGULATION_PLOT reads one file listing the nodes, and
a second file consisting of groups of 3 or 6 nodes that make up
triangles, and creates an Encapsulated PostScript image of the
triangulation.
Usage:
triangulation_plot prefix node_vis triangle_vis
where prefix is the common prefix for the node and triangle files,
and will also be used to name the output file:

prefix_nodes.txt, the node coordinates (input);

prefix_elements.txt, the triangulation (input);

prefix.eps, the plot file (output);
and node_vis is an integer defining the node visibility:

0, do not show the nodes;

1, show the nodes;

2, show the nodes and label them.
and triangle_vis is an integer defining the triangle visibility:

0, do not show the triangles;

1, show the triangles;

2, show the triangles and label them.
Licensing:
The computer code and data files described and made available on this web page
are distributed under
the GNU LGPL license.
Languages:
TRIANGULATION_PLOT is available in
a C++ version and
a FORTRAN90 version and
a MATLAB version.
Related Data and Programs:
TRIANGLE,
a C program which
computes a triangulation of a geometric region.
TRIANGULATION,
a C++ library which
is useful for working with triangulations.
TRIANGULATION_DISPLAY,
a MATLAB program which
displays the nodes and elements of a triangulation on the MATLAB graphics screen;
TRIANGULATION_DISPLAY_OPENGL,
a C++ program which
reads files defining a triangulation and displays an image using Open GL.
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,
a directory which
contains a description and
examples of order 3 triangulations.
TRIANGULATION_ORDER6,
a directory which
contains a description and
examples of order 6 triangulations.
TRIANGULATION_SVG,
a C++ program which
creates an SVG image of a triangulation, which can be displayed
by a web browser.
Reference:

Marc deBerg, Marc Krevald, Mark Overmars,
Otfried Schwarzkopf,
Computational Geometry,
Springer, 2000,
ISBN: 3540656200,
LC: QA448.D38.C65.

Joseph ORourke,
Computational Geometry,
Second Edition,
Cambridge, 1998,
ISBN: 0521649765,
LC: QA448.D38.
Source Code:
Examples and Tests:
ELBOW3 is an elbowshaped region, triangulated using
order 3 triangles.
ELL3 is an order 3 triangulation of a set of nodes in an Lshaped region.
ELL6 is an order 6 triangulation of a set of nodes in an Lshaped region.
HEX_HOLES3 puts a set of nodes into the double hexagonal
hole region using CVT techniques, and creates an order 3 triangulation
using TABLE_DELAUNAY.
LAKE3 uses constrained CVT methods to place nodes inside
and on the boundary of the problem 14 triangulation region,
a lake with an island. An order 3 triangulation is used.
List of Routines:

MAIN is the main program for TRIANGULATION_PLOT.

CH_CAP capitalizes a single character.

CH_EQI is true if two characters are equal, disregarding case.

CH_TO_DIGIT returns the integer value of a base 10 digit.

FILE_COLUMN_COUNT counts the columns in the first line of a file.

FILE_EXIST reports whether a file exists.

FILE_ROW_COUNT counts the number of row records in a file.

I4_MAX returns the maximum of two integers.

I4_MIN returns the smaller of two integers.

I4_MODP returns the nonnegative remainder of integer division.

I4_WRAP forces an integer to lie between given limits by wrapping.

I4MAT_DATA_READ reads data from an I4MAT file.

I4MAT_HEADER_READ reads the header from an I4MAT file.

I4MAT_TRANSPOSE_PRINT_SOME prints some of an I4MAT, transposed.

R8_HUGE returns a "huge" R8.

R8_NINT returns the nearest integer to an R8.

R8MAT_DATA_READ reads the data from an R8MAT file.

R8MAT_HEADER_READ reads the header from an R8MAT file.

R8MAT_TRANSPOSE_PRINT_SOME prints some of an R8MAT, transposed.

S_LEN_TRIM returns the length of a string to the last nonblank.

S_TO_I4 reads an I4 from a string.

S_TO_I4VEC reads an I4VEC from a string.

S_TO_R8 reads an R8 from a string.

S_TO_R8VEC reads an R8VEC from a string.

S_WORD_COUNT counts the number of "words" in a string.

TIMESTAMP prints the current YMDHMS date as a time stamp.

TRIANGULATION_ORDER3_PLOT plots a 3node triangulation.

TRIANGULATION_ORDER4_PLOT plots a 4node triangulation.

TRIANGULATION_ORDER6_PLOT plots a 6node triangulation.
You can go up one level to
the C++ source codes.
Last revised on 22 August 2009.