# ncl_c_csvorod - Man Page

calculate Voronoi polygons for points on a sphere.

## Function Prototype

```void   c_csvorod(int, double [], double [],
int, int, double [], double [], double [],
int *, int *, int [], int *);```

## Synopsis

```void *c_csvorod (n, rlat, rlon, ni, nf, plat, plon, rc,
nca, numv, nv, ier);```

## Description

n

The number of input data points, n > 2.

rlat

An array containing the latitudes of the input data, expressed in degrees. The first three points must not be collinear (lie on a common great circle).

rlon

An array containing the longitudes of the input data, expressed in degrees.

ni

The index of the input coordinate for which you  want to determine the Voronoi polygon (0 <= ni < n).

nf

Flag indicating if this is the first call to c_csvorod to  retrieve Voronoi polygons for this dataset (1=yes, 0=no). Calls subsequent to the  first call for a given dataset are much faster than the first call.

plat

The latitudes for the vertices of the Voronoi polygons. These are circumcenters of circles passing through the Delaunay triangles. If a coordinate is a boundary point, then the circle may pass through certain "pseudo points" that have been added to the original dataset in order to complete the Voronoi polygon.

plon

The longitudes for the vertices of the Voronoi polygons.

rc

Array containing circumradii (arc lengths in degrees of the angle between a circumcenter and its associated triangle vertices).

nca

*nca is the actual number of circumcenters returned in plat and plon. This number may be larger than n if the input dataset has boundary points, since certain "pseudo points" may have been added to the original dataset in order to complete the Voronoi polygon set.

numv

*numv is the number of vertices in the Voronoi polygon enclosing the coordinate (rlat[ni],rlon[ni]).

nv

An array containing numv indices for the Voronoi polygon enclosing the coordinate (rlat[ni],rlon[ni]). The indices returned in this array refer to the coordinates returned in plat and plon. For example, if the integer "j" is an element of the nv array, then (plat[j],plon[j]) is a vertex of the Voronoi polygon enclosing (rlat[ni],rlon[ni]). The indices in nv list out the vertices of the Voronoi polygon in counter-clockwise order.

ier

An error return value. If *ier is returned as 0, then no errors were detected. If *ier is non-zero, then refer to the error list in the error table for details.

## Usage

c_csvorod is called if you want to determine the Voronoi polygons for data randomly positioned on a sphere. Each call to c_csvorod calculates the vertices for the Voronoi polygon surrounding a specified input point.  c_csvorod is a double precision version of c_csvoro.

## Access

To use c_csvorod, load the NCAR Graphics library ngmath.