## NAME

           triangulate - Perform optimal Delauney triangulation and gridding

## SYNOPSIS

           triangulate  infiles [ -Dx|y ] [ -Eempty ] [ -Ggrdfile ] [ -H[nrec] ] [
           -Ix_inc[m|c][/y_inc[m|c]] ] [ -Jparameters ] [ -L  ]  [  -M[flag]  ]  [
           -Rwest/east/south/north[r]  ]  [  -V  ]  [  -Z ] [ -: ] [ -bi[s][n] ] [
           -bo[s][n] ]

## DESCRIPTION

           triangulate reads one or more ASCII  [or  binary]  files  (or  standard
           input) containing x,y[,z] and performs Delauney triangulation, i.e., it
           find how the points should be connected to give  the  most  equilateral
           triangulation  possible.  If  a  map  projection  is  chosen then it is
           applied before the triangulation is calculated. By default, the  output
           is triplets of point id numbers that make up each triangle and is writ-
           ten to standard output.  The id numbers refer to the points position in
           the input file.  As an option, you may choose to create a multiple seg-
           ment file that can be piped through psxy to draw the triangulation net-
           work.  If  -G -I are set a grid will be calculated based on the surface
           defined by the planar triangles. The actual algorithm used in the  tri-
           angulations  is  either  that  of  Watson [1982] [Default] or Shewchuck
           [1996] (if installed).  This choice is made during  the  GMT  installa-
           tion.

           infiles
                  Data  files  with the point coordinates in ASCII (or binary; see
                  -b). If no files are given the standard input is read.

## OPTIONS

           -D     Take either the x- or y-derivatives of  surface  represented  by
                  the planar facets (only used when -G is set).

           -E     Set the value assigned to empty nodes when -G is set [NaN].

           -G     Use  triangulation to grid the data onto an even grid (specified
                  with -I, -R). Append the name  of  the  output  grid  file.  The
                  interpolation  is  performed  in the original coordinates, so if
                  your triangles are close to the poles you are  better  off  pro-
                  jecting  all data to a local coordinate system before using tri-
                  angulate (this is true of all gridding routines).

           -H     Input file(s) has Header record(s). Number of header records can
                  be  changed  by  editing  your  .gmtdefaults  file. If used, GMT
                  default is 1 header record.

           -I     x_inc [and optionally y_inc] sets the  grid  size  for  optional
                  grid  output  (see  -G).   Append  m to indicate minutes or c to
                  indicate seconds.

           -J     Selects the map projection. Scale is  UNIT/degree,  1:xxxxx,  or
                  width  in  UNIT  (upper case modifier).  UNIT is cm, inch, or m,
                  depending on the MEASURE_UNIT setting in .gmtdefaults, but  this
                  can  be overridden on the command line by appending the c, i, or
                  m to the scale/width value.

                  CYLINDRICAL PROJECTIONS:

                  -Jclon0/lat0/scale (Cassini)
                  -Jjlon0/scale (Miller)
                  -Jmscale (Mercator - Greenwich and Equator as origin)
                  -Jmlon0/lat0/scale  (Mercator  -  Give  meridian  and   standard
                  parallel)
                  -Joalon0/lat0/azimuth/scale   (Oblique   Mercator  -  point  and
                  azimuth)
                  -Joblon0/lat0/lon1/lat1/scale (Oblique Mercator - two points)
                  -Joclon0/lat0/lonp/latp/scale  (Oblique  Mercator  -  point  and
                  pole)
                  -Jqlon0/scale  (Equidistant  Cylindrical  Projection (Plate Car-
                  ree))
                  -Jtlon0/scale (TM - Transverse Mercator, with Equator as y = 0)
                  -Jtlon0/lat0/scale (TM - Transverse Mercator, set origin)
                  -Juzone/scale (UTM - Universal Transverse Mercator)
                  -Jylon0/lats/scale (Basic Cylindrical Projection)

                  AZIMUTHAL PROJECTIONS:

                  -Jalon0/lat0/scale (Lambert).
                  -Jelon0/lat0/scale (Equidistant).
                  -Jflon0/lat0/horizon/scale (Gnomonic).
                  -Jglon0/lat0/scale (Orthographic).
                  -Jslon0/lat0/[slat/]scale (General Stereographic)

                  CONIC PROJECTIONS:

                  -Jblon0/lat0/lat1/lat2/scale (Albers)
                  -Jdlon0/lat0/lat1/lat2/scale (Equidistant)
                  -Jllon0/lat0/lat1/lat2/scale (Lambert)

                  MISCELLANEOUS PROJECTIONS:

                  -Jhlon0/scale (Hammer)
                  -Jilon0/scale (Sinusoidal)
                  -Jk[f|s]lon0/scale (Eckert IV (f) and VI (s))
                  -Jnlon0/scale (Robinson)
                  -Jrlon0/scale (Winkel Tripel)
                  -Jvlon0/scale (Van der Grinten)
                  -Jwlon0/scale (Mollweide)

                  NON-GEOGRAPHICAL PROJECTIONS:

                  -Jp[a]scale[/origin] (polar (theta,r)  coordinates,  optional  a
                  for azimuths and offset theta [0])
                  -Jxx-scale[l|ppow][/y-scale[l|ppow]]  (Linear,  log,  and  power
                  scaling)
                  More details can be found in the psbasemap manpages.

           -L     Indicates that the x column contains longitudes, which may  dif-
                  fer from the region in -R by [multiples of] 360 degrees [Default
                  assumes no periodicity].

           -M     Output triangulation network as multiple line segments separated
                  by a record whose first character is flag [>]. To plot, use psxy
                  with the -M option (see Examples).

           -R     west, east, south, and north specify the Region of interest.  To
                  specify boundaries in degrees and minutes [and seconds], use the
                  dd:mm[:ss] format. Append r if lower left and  upper  right  map
                  coordinates are given instead of wesn.

           -V     Selects verbose mode, which will send progress reports to stderr
                  [Default runs "silently"].

           -Z     Controls whether binary data file has two or three columns  [2].
                  Ignored if -b is not set.

           -:     Toggles  between  (longitude,latitude)  and (latitude,longitude)
                  input/output. [Default  is  (longitude,latitude)].   Applies  to
                  geographic coordinates only.

           -bi    Selects  binary input. Append s for single precision [Default is
                  double].  Append n for the  number  of  columns  in  the  binary
                  file(s).  [Default is 2 input columns].

           -O     Selects  Overlay  plot mode [Default initializes a new plot sys-
                  tem].  Node ids are stored as binary  4-byte  integer  triplets.
                  -bo is ignored if -M is selected.

## EXAMPLES

           To  triangulate  the points in the file samples.xyz, store the triangle
           information in a binary file, and make a grid for the  given  area  and
           spacing, try

           triangulate samples.xyz -bo -R0/30/0/30 -I2 -Gsurf.grd > samples.ijk

           To  draw  the  optimal Delauney triangulation network based on the same
           file using a 15 -cm-wide Mercator map, try

           triangulate  samples.xyz  -M  -R-100/-90/30/34   -JM15c   |   psxy   -M
           -R-100/-90/30/34 -JM15c -W0.5p -B1 > network.ps

## SEE ALSO

           gmt(l), pscontour(l)

## REFERENCES

           Watson,  D.  F., 1982, Acord: Automatic contouring of raw data, Comp. &
           Geosci., 8, 97-101.
           Shewchuck, J. R., 1996, Triangle: Engineering a 2D Quality Mesh Genera-
           tor  and Delaunay Triangulator, First Workshop on Applied Computational
           Geometry (Philadelphia, PA), 124-133, ACM, May 1996.
           www.cs.cmu.edu/~quake/triangle.html

    GMT3.4.6                          1 Jan 2005                    TRIANGULATE(l)