CSVORO(3NCARG)
π« CSVORO π«
okay bestie so this is the CSVORO page from the NCAR GRAPHICS manual (that's the 3NCARG section, iykyk) and it's literally all about β¨ Voronoi polygons β¨ for data chillin' on a sphere. no cap, it's giving geometry main character energy π¦
πΈ NAME πΈ
CSVORO β calculate Voronoi polygons for data on a sphere. periodt π
β¨ SYNOPSIS β¨
CALL CSVORO (NPTS, RLATI, RLONI, NI, NF, IWK, RWK,
NC, RLATO, RLONO, RC,
NCA, NUMV, NV, IER)
π DESCRIPTION π
okay so here's the whole cast of characters, one by one, no skips π«Ά
NPTS(integer, input) β how many input data points you got (NPTS > 3, bestie, that's the rule).RLATI(real, input) β an array holding the latitudes of the input data, in degrees. β οΈ the first three points must not be collinear, meaning they can't all lie on a common great circle. that's not a vibe, that's a requirement.RLONI(real, input) β an array holding the longitudes of the input data, also in degrees.NI(integer, input) β the index of the input coordinate you want the Voronoi polygon for (1 .LE. NI .LE. NPTS).NF(integer, input) β a flag telling you whether this is the first call toCSVOROfor this dataset to grab Voronoi polygons (1=yes,0=no). lowkey the glow-up here is that calls after the first one for a given dataset are much faster than the first call. π₯IWK(integer, input) β integer work space, dimensioned for27*NPTS.RWK(double precision, input) β a work space dimensioned for9*NPTS. π heads up:RWKmust be typedDOUBLE PRECISION. do not play with it.NC(integer, input) β the max size of the output arraysRLATO,RLONO, andRC.NCshould be2*NPTS.RLATO(real, output) β 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. (yes, pseudo points. they're doing their little side quest. π)RLONO(real, output) β the longitudes for the vertices of the Voronoi polygons.RC(real, output) β an array with the circumradii (arc lengths in degrees of the angle between a circumcenter and its associated triangle vertices).NCA(integer, output) β the actual number of circumcenters returned inRLATOandRLONO. this number can be bigger thanNPTSif your input dataset has boundary points, since certain "pseudo points" may have been added to the original dataset to complete the Voronoi polygon set. iconic behavior honestly.NUMV(integer, output) β the number of vertices in the Voronoi polygon enclosing the coordinate(RLATI(NI),RLONI(NI)).NV(integer, output) β an array (dimensioned forNPTS) containingNUMVindices for the Voronoi polygon enclosing the coordinate(RLATI(NI),RLONI(NI)). the indices returned here refer to the coordinates returned inRLATO,RLONO, andRC. for example, if the integerJis an element of theNVarray, then(RLATO(J),RLONO(J))is a vertex of the Voronoi polygon enclosing(RLATI(NI),RLONI(NI)). and the indices inNVlist out the vertices of the Voronoi polygon in counter-clockwise order. β¨ (they understood the assignment.)IER(integer, output) β an error return value. ifIERcomes back as0, then no errors were detected. ifIERis non-zero, then go look at the man page forcssgrid_errorsfor the deets. π
π¦ USAGE π¦
call CSVORO when you wanna determine the Voronoi polygons for data randomly positioned on a sphere. every single call to CSVORO calculates the vertices for the Voronoi polygon surrounding one specified input point. one call, one point, slay. π
π ACCESS π
to use CSVORO, load the NCAR Graphics library ngmath.
π SEE ALSO π
css_overviewcsstricssgrid
complete documentation for Cssgrid is available at URL http://ngwww.ucar.edu/ngdoc/ng/ngmath/cssgrid/csshome.html
π COPYRIGHT π
Copyright (C) 2000 University Corporation for Atmospheric Research
the use of this Software is governed by a License Agreement.
and that's the whole page bestie!! π this one's from the UNIX manual, dated May 2000, and it lives at CSVORO(3NCARG) β go forth and tessellate that sphere, you absolute legend π«Άβ¨πΈ
π¦ where this page comes from
- debian bookworm: libncarg-dev 6.6.2.dfsg.1-1
- debian trixie: libncarg-dev 6.6.2.dfsg.1-10+b2
- ubuntu jammy: libncarg-dev 6.6.2-10build2
- ubuntu questing: libncarg-dev 6.6.2.dfsg.1-10build2
- ubuntu resolute: libncarg-dev 6.6.2.dfsg.1-12
- ubuntu stonking: libncarg-dev 6.6.2.dfsg.1-12build2
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms