/usr/include/libqhull/qh-qhull.htm is in libqhull-dev 2012.1-4.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 | <!-- Do not edit with Front Page, it adds too many spaces -->
<html>
<head>
<meta http-equiv="Content-Type"
content="text/html; charset=iso-8859-1">
<title>libqhull.c -- top-level functions and basic data types</title>
</head>
<body>
<!-- Navigation links -->
<p><a name="TOP"><b>Up:</b></a> <a
href="http://www.qhull.org">Home page</a> for Qhull<br>
<b>Up:</b> <a href="../../html/index.htm#TOC">Qhull manual</a>: Table of Contents <br>
<b>Up:</b> <a href="../../html/qh-quick.htm#programs">Programs</a>
• <a href="../../html/qh-quick.htm#options">Options</a>
• <a href="../../html/qh-opto.htm#output">Output</a>
• <a href="../../html/qh-optf.htm#format">Formats</a>
• <a href="../../html/qh-optg.htm#geomview">Geomview</a>
• <a href="../../html/qh-optp.htm#print">Print</a>
• <a href="../../html/qh-optq.htm#qhull">Qhull</a>
• <a href="../../html/qh-optc.htm#prec">Precision</a>
• <a href="../../html/qh-optt.htm#trace">Trace</a><br>
<b>Up:</b> <a href="../../html/qh-code.htm#TOC">Qhull code: Table of Contents</a><br>
<b>To:</b> <a href="index.htm">Qhull functions</a>, macros, and data structures<br>
<b>To:</b> <a href="qh-geom.htm">Geom</a> • <a href="qh-globa.htm">Global</a>
• <a href="qh-io.htm">Io</a> • <a href="qh-mem.htm">Mem</a>
• <a href="qh-merge.htm">Merge</a> • <a href="qh-poly.htm">Poly</a>
• <a href="qh-qhull.htm#TOC">Qhull</a> • <a href="qh-set.htm">Set</a>
• <a href="qh-stat.htm">Stat</a> • <a href="qh-user.htm">User</a>
</p>
<hr>
<h2>libqhull.c -- top-level functions and basic data types</h2>
<blockquote>
<p>Qhull implements the Quickhull algorithm for computing
the convex hull. The Quickhull algorithm combines two
well-known algorithms: the 2-d quickhull algorithm and
the n-d beneath-beyond algorithm. See
<a href="../../html/index.htm#description">Description of Qhull</a>. </p>
<p>This section provides an index to the top-level
functions and base data types. The top-level header file, <tt>libqhull.h</tt>,
contains prototypes for these functions.</p>
</blockquote>
<p><b>Copyright © 1995-2012 C.B. Barber</b></p>
<hr>
<p><a href="#TOP">»</a> <a href="qh-geom.htm#TOC">Geom</a>
<a name="TOC">•</a> <a href="qh-globa.htm#TOC">Global</a>
• <a href="qh-io.htm#TOC">Io</a> • <a href="qh-mem.htm#TOC">Mem</a>
• <a href="qh-merge.htm#TOC">Merge</a> • <a href="qh-poly.htm#TOC">Poly</a>
• <b>Qhull</b> • <a href="qh-set.htm#TOC">Set</a>
• <a href="qh-stat.htm#TOC">Stat</a> • <a href="qh-user.htm#TOC">User</a>
</p>
<h3>Index to <a href="libqhull.c">libqhull.c</a>,
<a href="libqhull.h">libqhull.h</a>, and
<a href="../qhull/unix.c">unix.c</a></h3>
<ul>
<li><a href="#qtype">libqhull.h and unix.c data types and
constants</a> </li>
<li><a href="#qmacro">libqhull.h other macros</a> </li>
<li><a href="#qfunc">Quickhull routines in call order</a> </li>
<li><a href="#qinit">Top-level routines for initializing and terminating Qhull</a></li>
<li><a href="#qin">Top-level routines for reading and modifying the input</a></li>
<li><a href="#qcall">Top-level routines for calling Qhull</a></li>
<li><a href="#qout">Top-level routines for returning results</a></li>
<li><a href="#qtest">Top-level routines for testing and debugging</a></li>
</ul>
<h3><a href="qh-qhull.htm#TOC">»</a><a name="qtype">libqhull.h and unix.c
data types and constants</a></h3>
<ul>
<li><a href="libqhull.h#flagT">flagT</a> Boolean flag as
a bit </li>
<li><a href="libqhull.h#boolT">boolT</a> boolean value,
either True or False </li>
<li><a href="libqhull.h#CENTERtype">CENTERtype</a> to
distinguish facet->center </li>
<li><a href="libqhull.h#qh_PRINT">qh_PRINT</a> output
formats for printing (qh.PRINTout) </li>
<li><a href="libqhull.h#qh_ALL">qh_ALL</a> argument flag
for selecting everything </li>
<li><a href="libqhull.h#qh_ERR">qh_ERR</a> Qhull exit
codes for indicating errors </li>
<li><a href="libqhull.h#qh_FILEstderr">qh_FILEstderr</a> Fake stderr
to distinguish error output from normal output [C++ only]</li>
<li><a href="../qhull/unix.c#prompt">qh_prompt</a> version and long prompt for Qhull</li>
<li><a href="../qhull/unix.c#prompt2">qh_prompt2</a> synopsis for Qhull</li>
<li><a href="../qhull/unix.c#prompt3">qh_prompt3</a> concise prompt for Qhull</li>
<li><a href="global.c#qh_version">qh_version</a> version stamp</li>
</ul>
<h3><a href="qh-qhull.htm#TOC">»</a><a name="qmacro">libqhull.h other
macros</a></h3>
<ul>
<li><a href="qhull_a.h#traceN">traceN</a> print trace
message if <em>qh.IStracing >= N</em>. </li>
<li><a href="qhull_a.h#QHULL_UNUSED">QHULL_UNUSED</a> declare an
unused variable to avoid warnings. </li>
</ul>
<h3><a href="qh-qhull.htm#TOC">»</a><a name="qfunc">Quickhull
routines in call order</a></h3>
<ul>
<li><a href="../qhull/unix.c#main">main</a> processes the
command line, calls qhull() to do the work, and
exits </li>
<li><a href="libqhull.c#qhull">qh_qhull</a> construct
the convex hull of a set of points </li>
<li><a href="libqhull.c#build_withrestart">qh_build_withrestart</a>
allow restarts while calling qh_buildhull</li>
<li><a href="poly2.c#initbuild">qh_initbuild</a>
initialize hull and outside sets with point array</li>
<li><a href="libqhull.c#partitionall">qh_partitionall</a>
partition all points into outside sets </li>
<li><a href="libqhull.c#buildhull">qh_buildhull</a>
construct a convex hull by adding points one at a
time </li>
<li><a href="libqhull.c#nextfurthest">qh_nextfurthest</a>
return next furthest point for processing </li>
<li><a href="libqhull.c#buildtracing">qh_buildtracing</a>
trace an iteration of buildhull </li>
<li><a href="libqhull.c#addpoint">qh_addpoint</a> add a
point to the convex hull </li>
<li><a href="libqhull.c#findhorizon">qh_findhorizon</a>
find the horizon and visible facets for a point </li>
<li><a href="libqhull.c#partitionvisible">qh_partitionvisible</a>
partition points from facets in qh.visible_list
to facets in qh.newfacet_list </li>
<li><a href="libqhull.c#partitionpoint">qh_partitionpoint</a>
partition a point as inside, coplanar with, or
outside a facet </li>
<li><a href="libqhull.c#partitioncoplanar">qh_partitioncoplanar</a>
partition coplanar point into a facet </li>
<li><a href="libqhull.c#precision">qh_precision</a> restart on precision errors if not merging and if 'QJn'</li>
</ul>
<h3><a href="qh-qhull.htm#TOC">»</a><a name="qinit">Top-level routines for initializing and terminating Qhull (in other modules)</a></h3>
<ul>
<li><a href="global.c#freebuild">qh_freebuild</a>
free memory used by qh_initbuild and qh_buildhull
</li>
<li><a href="global.c#checkflags">qh_checkflags</a>
check flags for multiple frontends to qhull
<li><a href="global.c#freeqhull">qh_freeqhull</a>
free memory used by qhull </li>
<li><a href="global.c#init_A">qh_init_A</a> called
before error handling initialized </li>
<li><a href="global.c#init_B">qh_init_B</a> called
after points are defined </li>
<li><a href="global.c#initflags">qh_initflags</a> set
flags and constants from command line </li>
<li><a href="rboxlib.c#rboxpoints">qh_rboxpoints</a>
generate points for qhull </li>
<li><a href="global.c#restore_qhull">qh_restore_qhull</a>
restores a saved qhull </li>
<li><a href="global.c#save_qhull">qh_save_qhull</a>
saves qhull for later restoring </li>
<li><a href="user.c#user_memsizes">qh_user_memsizes</a>
define additional quick allocation sizes
</li>
</ul>
<h3><a href="qh-qhull.htm#TOC">»</a><a name="qin">Top-level routines for reading and modifying the input (in other modules)</a></h3>
<ul>
<li><a href="geom2.c#gram_schmidt">qh_gram_schmidt</a>
implements Gram-Schmidt orthogonalization by rows </li>
<li><a href="geom2.c#projectinput">qh_projectinput</a>
project input along one or more dimensions +
Delaunay projection </li>
<li><a href="geom2.c#randommatrix">qh_randommatrix</a>
generate a random dimXdim matrix in range (-1,1) </li>
<li><a href="io.c#readpoints">qh_readpoints</a> read
points from input </li>
<li><a href="geom2.c#rotateinput">qh_rotateinput</a> rotate
input points using row matrix </li>
<li><a href="geom2.c#scaleinput">qh_scaleinput</a> scale
input points using qh low_bound/high_bound </li>
<li><a href="geom2.c#setdelaunay">qh_setdelaunay</a> project
points to paraboloid for Delaunay triangulation </li>
<li><a href="geom2.c#sethalfspace_all">qh_sethalfspace_all</a>
generate dual for halfspace intersection with interior
point </li>
</ul>
<h3><a href="qh-qhull.htm#TOC">»</a><a name="qcall">Top-level routines for calling Qhull (in other modules)</a></h3>
<ul>
<li><a href="libqhull.c#addpoint">qh_addpoint</a> add
point to convex hull </li>
<li><a href="poly2.c#findbestfacet">qh_findbestfacet</a>
find facet that is furthest below a point </li>
<li><a href="poly2.c#findfacet_all">qh_findfacet_all</a>
exhaustive search for facet below a point </li>
<li><a href="libqhull.c#qhull">qh_qhull</a> construct
the convex hull of a set of points </li>
</ul>
<h3><a href="qh-qhull.htm#TOC">»</a><a name="qout">Top-level routines for returning results (in other modules)</a></h3>
<ul>
<li><a href="stat.c#collectstatistics">qh_collectstatistics</a>
collect statistics for qh.facet_list </li>
<li><a href="poly2.c#nearvertex">qh_nearvertex</a>
return nearest vertex to point </li>
<li><a href="poly2.c#point">qh_point</a> return point
for a point ID </li>
<li><a href="poly2.c#pointfacet">qh_pointfacet</a>
return temporary set of facets indexed by point
ID </li>
<li><a href="poly.c#pointid">qh_pointid</a> return ID
for a point</li>
<li><a href="poly2.c#pointvertex">qh_pointvertex</a>
return vertices (if any) for all points</li>
<li><a href="stat.c#printallstatistics">qh_printallstatistics</a>
print all statistics </li>
<li><a href="io.c#printneighborhood">qh_printneighborhood</a>
print neighborhood of one or two facets </li>
<li><a href="libqhull.c#printsummary">qh_printsummary</a>
print summary </li>
<li><a href="io.c#produce_output">qh_produce_output</a>
print the results of qh_qhull() </li>
<li><a href="poly2.c#setvoronoi_all">qh_setvoronoi_all</a>
compute Voronoi centers for all facets </li>
</ul>
<h3><a href="qh-qhull.htm#TOC">»</a><a name="qtest">Top-level routines for testing and debugging (in other modules)</a></h3>
<ul>
<li><a href="io.c#dfacet">dfacet</a> print facet by
ID from debugger </li>
<li><a href="io.c#dvertex">dvertex</a> print vertex
by ID from debugger </li>
<li><a href="poly2.c#check_output">qh_check_output</a>
check output </li>
<li><a href="poly2.c#check_points">qh_check_points</a>
verify that all points are inside the convex hull
</li>
<li><a href="user.c#errexit">qh_errexit</a> report
error with a facet and a ridge</li>
<li><a href="libqhull.c#errexit2">qh_errexit2</a> report
error with two facets </li>
<li><a href="user.c#errprint">qh_errprint</a> print
erroneous facets, ridge, and vertex </li>
<li><a href="user.c#printfacetlist">qh_printfacetlist</a>
print all fields for a list of facets </li>
</ul>
<p><!-- Navigation links --> </p>
<hr>
<p><b>Up:</b>
<a href="http://www.qhull.org">Home page for
Qhull</a> <br>
<b>Up:</b> <a href="../../html/index.htm#TOC">Qhull manual: Table of Contents</a> <br>
<b>Up:</b> <a href="../../html/qh-quick.htm#programs">Programs</a>
• <a href="../../html/qh-quick.htm#options">Options</a>
• <a href="../../html/qh-opto.htm#output">Output</a>
• <a href="../../html/qh-optf.htm#format">Formats</a>
• <a href="../../html/qh-optg.htm#geomview">Geomview</a>
• <a href="../../html/qh-optp.htm#print">Print</a>
• <a href="../../html/qh-optq.htm#qhull">Qhull</a>
• <a href="../../html/qh-optc.htm#prec">Precision</a>
• <a href="../../html/qh-optt.htm#trace">Trace</a><br>
<b>Up:</b> <a href="../../html/qh-code.htm#TOC">Qhull code: Table of Contents</a> <br>
<b>To:</b> <a href="index.htm">Qhull functions</a>, macros, and data structures<br>
<b>To:</b> <a href="qh-geom.htm">Geom</a> •
<a href="qh-globa.htm">Global</a> • <a href="qh-io.htm">Io</a>
• <a href="qh-mem.htm">Mem</a> • <a href="qh-merge.htm">Merge</a>
• <a href="qh-poly.htm">Poly</a> • <a href="qh-qhull.htm#TOC">Qhull</a>
• <a href="qh-set.htm">Set</a> • <a href="qh-stat.htm">Stat</a>
• <a href="qh-user.htm">User</a><br>
</p>
<p><!-- GC common information --> </p>
<hr>
<p><a href="http://www.geom.uiuc.edu/"><img
src="../../html/qh--geom.gif" align="middle" width="40" height="40"></a><i>The
Geometry Center Home Page </i></p>
<p>Comments to: <a href=mailto:qhull@qhull.org>qhull@qhull.org</a>
</a><br>
Created: May 2, 1997 --- <!-- hhmts start --> Last modified: see top <!-- hhmts end --> </p>
</body>
</html>
|