Up: Home page for Qhull (local)
Up: Qhull manual: Table of Contents
Up: Programs • Options • Output • Formats • Geomview • Print • Qhull • Precision • Trace • Functions (local)
Up: Qhull code
To: Geom • Global • Io • Mem • Merge • Poly • Qhull • Set • Stat • User

## io_r.c -- input and output operations

> Qhull provides a wide range of input and output options. To organize the code, most output formats use the same driver:

>         qh_printbegin( fp, format, facetlist, facets, printall );

>         FORALLfacet_( facetlist )
>           qh_printafacet( fp, format, facet, printall );

>         FOREACHfacet_( facets )
>           qh_printafacet( fp, format, facet, printall );

>         qh_printend( fp, format );

> Note the 'printall' flag. It selects whether or not qh_skipfacet() is tested.

Copyright © 1995-2020 C.B. Barber

» Geom • Global • Io • Mem • Merge • Poly • Qhull • Set • Stat • User

### Index to io_r.c and io_r.h

- io_r.h constants and types
- User level functions
- Print functions for all output formats
- Text output functions
- Text utility functions
- Geomview output functions
- Geomview utility functions

### »io_r.h constants and types

- qh_MAXfirst maximum length of first two lines of stdin
- qh_WHITESPACE possible values of white space
- printvridgeT function to print results of qh_printvdiagram or qh_eachvoronoi

### »User level functions

- qh_copyfilename copy filename identified by qh_skipfilename
- qh_eachvoronoi_all visit each Voronoi ridge of the Voronoi diagram
- qh_prepare_output prepare Qhull for output (called by qh_produce_output())
- qh_printlists print out facet lists for debugging
- qh_printsummary print summary ('s')
- qh_produce_output prints out the result of qhull()
- qh_produce_output2 prints out the result of qhull() without calling qh_prepare_output()
- qh_readfeasible read interior point from remainder and qh fin ('H')
- qh_readpoints read input points
- qh_setfeasible set interior point from qh feasible_string ('Hn,n,n')
- qh_skipfilename skip filename in string

### »Print functions for all output formats

- qh_countfacets count good facets for printing and set visitid
- qh_markkeep restrict good facets for qh.KEEParea ('PAn'), qh.KEEPmerge ('PMn'), and qh.KEEPminArea ('PFn')
- qh_order_vertexneighbors order facet neighbors of vertex by 2-d (orientation), 3-d (adjacency), or n-d (f.visitid,id) ('i', 'o')
- qh_printafacet print facet in an output format
- qh_printbegin print header for an output format
- qh_printend print trailer for an output format
- qh_printfacetlist print facets in a facetlist
- qh_printfacets print facetlist and/or facet set in an output format
- qh_printneighborhood print neighborhood of one or two facets ('Po')
- qh_produce_output print the results of qh_qhull()
- qh_skipfacet True if not printing this facet ('Pdk:n', 'QVn', 'QGn')
- qh_facetvertices return vertices in a set of facets ('p')

### »Text output functions

- qh_eachvoronoi print or visit each Voronoi ridge for an input site of the Voronoi diagram
- qh_printextremes print extreme points by point ID (vertices of convex hull) ('Fx')
- qh_printextremes_2d print 2-d extreme points by point ID ('Fx')
- qh_printextremes_d print extreme points of input sites for Delaunay triangulations ('Fx')
- qh_printfacet print all fields of a facet ('f')
- qh_printfacet2math print 2-d Maple or Mathematica output for a facet ('FM' or 'm')
- qh_printfacet3math print 3-d Maple or Mathematica facet ('FM' or 'm')
- qh_printfacet3vertex print vertices for a 3-d facet ('i', 'o')
- qh_printfacetheader prints header fields of a facet ('f')
- qh_printfacetNvertex_nonsimplicial print vertices for an N-d non-simplicial facet ('i', 'Ft')
- qh_printfacetNvertex_simplicial print vertices for an N-d simplicial facet ('i', 'o', 'Ft')
- qh_printfacetridges prints ridges of a facet ('f')
- qh_printpoints_out prints vertices for facets by their point coordinates ('p')
- qh_printridge print all fields for a ridge ('f')
- qh_printvdiagram print voronoi diagram as Voronoi vertices for each input pair
- qh_printvertex print all fields for a vertex ('f')
- qh_printvertexlist print vertices used by a list or set of facets ('f')
- qh_printvertices print a set of vertices ('f')
- qh_printvneighbors print vertex neighbors of vertices ('FN')
- qh_printvoronoi print voronoi diagram in 'o' or 'G' format

### »Text utility functions

- dfacet print facet by ID
- dvertex print vertex by ID
- qh_compare_facetarea used by qsort() to order facets by area
- qh_compare_facetvisit used by qsort() to order facets by visit ID or ID
- qh_compare_nummerge used by qsort() to order facets by number of merges
- qh_detvnorm determine normal for Voronoi ridge
- qh_detvridge determine Voronoi ridge for an input site
- qh_detvridge3 determine 3-d Voronoi ridge for an input site
- qh_facet2point return two projected temporary vertices for a 2-d facet ('m', 'G')
- qh_markvoronoi mark Voronoi vertices for printing
- qh_printcenter print facet->center as centrum or Voronoi center ('Ft', 'v p', 'FC', 'f')
- qh_printpoint, qh_printpointid, print coordinates of a point ('p', 'o', 'Fp', 'G', 'f')
- qh_printpoint3 prints 2-d, 3-d, or 4-d point as 3-d coordinates ('G')
- qh_printvdiagram2 print voronoi diagram for each ridge of each vertex from qh_markvoronoi
- qh_printvnorm print separating plane of the Voronoi diagram for a pair of input sites
- qh_printvridge print ridge of the Voronoi diagram for a pair of input sites
- qh_projectdim3 project 2-d 3-d or 4-d point to a 3-d point ('G')

### »Geomview output functions

- qh_printfacet2geom print facet as a 2-d VECT object
- qh_printfacet2geom_points print points as a 2-d VECT object with offset
- qh_printfacet3geom_nonsimplicial print Geomview OFF for a 3-d nonsimplicial facet.
- qh_printfacet3geom_points prints a 3-d facet as OFF Geomview object.
- qh_printfacet3geom_simplicial print Geomview OFF for a 3-d simplicial facet.
- qh_printfacet4geom_nonsimplicial print Geomview 4OFF file for a 4d nonsimplicial facet
- qh_printfacet4geom_simplicial print Geomview 4OFF file for a 4d simplicial facet
- qh_printhyperplaneintersection print hyperplane intersection as OFF or 4OFF
- qh_printvoronoi print voronoi diagram in 'o' or 'G' format

### »Geomview utility functions

- qh_geomplanes return outer and inner planes for Geomview
- qh_printcentrum print centrum for a facet in OOGL format
- qh_printend4geom helper function for qh_printbegin/printend
- qh_printhyperplaneintersection print Geomview OFF or 4OFF for the intersection of two hyperplanes in 3-d or 4-d
- qh_printline3geom prints a line as a VECT
- qh_printpointvect prints a 2-d or 3-d point as 3-d VECT's
- qh_printpointvect2 prints a 2-d or 3-d point as 2 3-d VECT's
- qh_printspheres prints 3-d vertices as OFF spheres

Up: Home page for Qhull (local)
Up: Qhull manual: Table of Contents
Up: Programs • Options • Output • Formats • Geomview • Print • Qhull • Precision • Trace • Functions (local)
Up: Qhull code
To: Geom • Global • Io • Mem • Merge • Poly • Qhull • Set • Stat • User

The Geometry Center Home Page

Comments to: qhull@qhull.org
Created: May 2, 1997 --- Last modified: see top