1c_csvorod(3NCARG) NCAR GRAPHICS c_csvorod(3NCARG)
2
3
4
6 c_csvorod - calculate Voronoi polygons for points on a sphere.
7
9 void c_csvorod(int, double [], double [],
10 int, int, double [], double [], double [],
11 int *, int *, int [], int *);
12
13
15 void *c_csvorod (n, rlat, rlon, ni, nf, plat, plon, rc,
16 nca, numv, nv, ier);
17
18
20 n The number of input data points, n > 2.
21
22 rlat An array containing the latitudes of the input data,
23 expressed in degrees. The first three points must not be
24 collinear (lie on a common great circle).
25
26 rlon An array containing the longitudes of the input data,
27 expressed in degrees.
28
29 ni The index of the input coordinate for which you want to
30 determine the Voronoi polygon (0 <= ni < n).
31
32 nf Flag indicating if this is the first call to c_csvorod to
33 retrieve Voronoi polygons for this dataset (1=yes, 0=no).
34 Calls subsequent to the first call for a given dataset are
35 much faster than the first call.
36
37 plat The latitudes for the vertices of the Voronoi polygons.
38 These are circumcenters of circles passing through the
39 Delaunay triangles. If a coordinate is a boundary point,
40 then the circle may pass through certain "pseudo points"
41 that have been added to the original dataset in order to
42 complete the Voronoi polygon.
43
44 plon The longitudes for the vertices of the Voronoi polygons.
45
46 rc Array containing circumradii (arc lengths in degrees of the
47 angle between a circumcenter and its associated triangle
48 vertices).
49
50 nca *nca is the actual number of circumcenters returned in plat
51 and plon. This number may be larger than n if the input
52 dataset has boundary points, since certain "pseudo points"
53 may have been added to the original dataset in order to
54 complete the Voronoi polygon set.
55
56 numv *numv is the number of vertices in the Voronoi polygon
57 enclosing the coordinate (rlat[ni],rlon[ni]).
58
59 nv An array containing numv indices for the Voronoi polygon
60 enclosing the coordinate (rlat[ni],rlon[ni]). The indices
61 returned in this array refer to the coordinates returned in
62 plat and plon. For example, if the integer "j" is an ele‐
63 ment of the nv array, then (plat[j],plon[j]) is a vertex of
64 the Voronoi polygon enclosing (rlat[ni],rlon[ni]). The
65 indices in nv list out the vertices of the Voronoi polygon
66 in counter-clockwise order.
67
68 ier An error return value. If *ier is returned as 0, then no
69 errors were detected. If *ier is non-zero, then refer to
70 the error list in the error table for details.
71
73 c_csvorod is called if you want to determine the Voronoi polygons for
74 data randomly positioned on a sphere. Each call to c_csvorod calculates
75 the vertices for the Voronoi polygon surrounding a specified input
76 point. c_csvorod is a double precision version of c_csvoro.
77
79 To use c_csvorod, load the NCAR Graphics library ngmath.
80
82 css_overview, c_cssgrid, c_csvoro, cssgrid_errors.
83
84 Complete documentation for Cssgrid is available at URL
85 http://ngwww.ucar.edu/ngdoc/ng/ngmath/cssgrid/csshome.html
86
88 Copyright (C) 2000
89 University Corporation for Atmospheric Research
90
91 This documentation is free software; you can redistribute it and/or
92 modify it under the terms of the GNU General Public License as pub‐
93 lished by the Free Software Foundation; either version 2 of the
94 License, or (at your option) any later version.
95
96 This software is distributed in the hope that it will be useful, but
97 WITHOUT ANY WARRANTY; without even the implied warranty of MER‐
98 CHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General
99 Public License for more details.
100
101 You should have received a copy of the GNU General Public License along
102 with this software; if not, write to the Free Software Foundation,
103 Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
104
105
106
107
108UNIX May 2000 c_csvorod(3NCARG)