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: 3-540-65620-0,
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 elbow-shaped region, triangulated using
order 3 triangles.
ELL3 is an order 3 triangulation of a set of nodes in an L-shaped region.
ELL6 is an order 6 triangulation of a set of nodes in an L-shaped 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 3-node triangulation.
-
TRIANGULATION_ORDER4_PLOT plots a 4-node triangulation.
-
TRIANGULATION_ORDER6_PLOT plots a 6-node triangulation.
You can go up one level to
the C++ source codes.
Last revised on 22 August 2009.