mirror of
https://github.com/SoftFever/OrcaSlicer.git
synced 2025-10-20 23:31:13 -06:00
Add the full source of BambuStudio
using version 1.0.10
This commit is contained in:
parent
30bcadab3e
commit
1555904bef
3771 changed files with 1251328 additions and 0 deletions
628
src/qhull/html/qdelaun.htm
Normal file
628
src/qhull/html/qdelaun.htm
Normal file
|
@ -0,0 +1,628 @@
|
|||
<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML//EN">
|
||||
<html>
|
||||
|
||||
<head>
|
||||
<title>qdelaunay -- Delaunay triangulation</title>
|
||||
</head>
|
||||
|
||||
<body>
|
||||
<!-- Navigation links -->
|
||||
<a name="TOP"><b>Up</b></a><b>:</b>
|
||||
<a href="http://www.qhull.org">Home page</a> for Qhull<br>
|
||||
<b>Up:</b> <a href="index.htm#TOC">Qhull manual</a>: Table of Contents<br>
|
||||
<b>To:</b> <a href="qh-quick.htm#programs">Programs</a>
|
||||
• <a href="qh-quick.htm#options">Options</a>
|
||||
• <a href="qh-opto.htm#output">Output</a>
|
||||
• <a href="qh-optf.htm#format">Formats</a>
|
||||
• <a href="qh-optg.htm#geomview">Geomview</a>
|
||||
• <a href="qh-optp.htm#print">Print</a>
|
||||
• <a href="qh-optq.htm#qhull">Qhull</a>
|
||||
• <a href="qh-optc.htm#prec">Precision</a>
|
||||
• <a href="qh-optt.htm#trace">Trace</a>
|
||||
• <a href="../src/libqhull_r/index.htm">Functions</a><br>
|
||||
<b>To:</b> <a href="#synopsis">sy</a>nopsis
|
||||
• <a href="#input">in</a>put • <a href="#outputs">ou</a>tputs
|
||||
• <a href="#controls">co</a>ntrols • <a href="#graphics">gr</a>aphics
|
||||
• <a href="#notes">no</a>tes • <a href="#conventions">co</a>nventions
|
||||
• <a href="#options">op</a>tions
|
||||
|
||||
<hr>
|
||||
<!-- Main text of document -->
|
||||
<h1><a
|
||||
href="http://www.geom.uiuc.edu/graphics/pix/Special_Topics/Computational_Geometry/delaunay.html"><img
|
||||
src="qh--dt.gif" alt="[delaunay]" align="middle" width="100"
|
||||
height="100"></a>qdelaunay -- Delaunay triangulation</h1>
|
||||
|
||||
<p>The Delaunay triangulation is the triangulation with empty
|
||||
circumspheres. It has many useful properties and applications.
|
||||
See the survey article by Aurenhammer [<a
|
||||
href="index.htm#aure91">'91</a>] and the detailed introduction
|
||||
by O'Rourke [<a href="index.htm#orou94">'94</a>]. </p>
|
||||
|
||||
<blockquote>
|
||||
<dl>
|
||||
<dt><b>Example:</b> rbox r y c G0.1 D2 | qdelaunay <a href="qh-opto.htm#s">s</a>
|
||||
<a href="qh-optf.htm#Fv">Fv</a> <a href="qh-optt.htm#TO">TO
|
||||
result</a></dt>
|
||||
<dd>Compute the 2-d Delaunay triangulation of a triangle and
|
||||
a small square.
|
||||
Write a summary to the console and unoriented regions to 'result'.
|
||||
Merge regions for cocircular input sites (i.e., the
|
||||
square).</dd>
|
||||
<dt> </dt>
|
||||
<dt><b>Example:</b> rbox r y c G0.1 D2 | qdelaunay <a href="qh-opto.htm#s">s</a>
|
||||
<a href="qh-optf.htm#Fv">Fv</a> <a href="qh-optq.htm#Qt">Qt</a></dt>
|
||||
<dd>Compute the 2-d Delaunay triangulation of a triangle and
|
||||
a small square. Write a summary and unoriented
|
||||
regions to the console. Produce triangulated output.</dd>
|
||||
<dt> </dt>
|
||||
<dt><b>Example:</b> rbox 10 D2 | qdelaunay <a
|
||||
href="qh-optq.htm#QJn">QJ</a> <a href="qh-opto.htm#s">s</a>
|
||||
<a href="qh-opto.htm#i">i</a> <a href="qh-optt.htm#TO">TO
|
||||
result</a></dt>
|
||||
<dd>Compute the 2-d Delaunay triangulation of 10 random
|
||||
points. Joggle the input to guarantee triangular output.
|
||||
Write a summary to the console and the regions to
|
||||
'result'.</dd>
|
||||
</dl>
|
||||
</blockquote>
|
||||
|
||||
<p>Qhull computes the Delaunay triangulation by computing a
|
||||
convex hull. It lifts the input sites to a paraboloid by adding
|
||||
the sum of the squares of the coordinates. It scales the height
|
||||
of the paraboloid to improve numeric precision ('<a href=qh-optq.htm#Qbb>Qbb</a>').
|
||||
It computes the convex
|
||||
hull of the lifted sites, and projects the lower convex hull to
|
||||
the input.
|
||||
|
||||
<p>Each region of the Delaunay triangulation
|
||||
corresponds to a facet of the lower half of the convex hull.
|
||||
Facets of the upper half of the convex hull correspond to the <a
|
||||
href="qdelau_f.htm">furthest-site Delaunay triangulation</a>.
|
||||
See the examples, <a href="qh-eg.htm#delaunay">Delaunay and
|
||||
Voronoi diagrams</a>.</p>
|
||||
|
||||
<p>See <a href="http://www.qhull.org/html/qh-faq.htm#TOC">Qhull FAQ</a> - Delaunay and
|
||||
Voronoi diagram questions.</p>
|
||||
|
||||
<p>By default, qdelaunay merges cocircular and cospherical regions.
|
||||
For example, the Delaunay triangulation of a square inside a diamond
|
||||
('rbox D2 c d G4 | qdelaunay') contains one region for the square.
|
||||
|
||||
<p>Use option '<a href="qh-optq.htm#Qz">Qz</a>' if the input is circular, cospherical, or
|
||||
nearly so. It improves precision by adding a point "at infinity," above the corresponding paraboloid.
|
||||
|
||||
<p>If you use '<a href="qh-optq.htm#Qt">Qt</a>' (triangulated output),
|
||||
all Delaunay regions will be simplicial (e.g., triangles in 2-d).
|
||||
Some regions may be
|
||||
degenerate and have zero area. Triangulated output identifies coincident
|
||||
points.
|
||||
|
||||
<p>If you use '<a href="qh-optq.htm#QJn">QJ</a>' (joggled input), all Delaunay regions
|
||||
will be simplicial (e.g., triangles in 2-d). Coincident points will
|
||||
create small regions since the points are joggled apart. Joggled input
|
||||
is less accurate than triangulated output ('Qt'). See <a
|
||||
href="qh-impre.htm#joggle">Merged facets or joggled input</a>. </p>
|
||||
|
||||
<p>The output for 3-d Delaunay triangulations may be confusing if the
|
||||
input contains cospherical data. See the FAQ item
|
||||
<a href=qh-faq.htm#extra>Why
|
||||
are there extra points in a 4-d or higher convex hull?</a>
|
||||
Avoid these problems with triangulated output ('<a href="qh-optq.htm#Qt">Qt</a>') or
|
||||
joggled input ('<a href="qh-optq.htm#QJn">QJ</a>').
|
||||
</p>
|
||||
|
||||
<p>The 'qdelaunay' program is equivalent to
|
||||
'<a href=qhull.htm#outputs>qhull d</a> <a href=qh-optq.htm#Qbb>Qbb</a>' in 2-d to 3-d, and
|
||||
'<a href=qhull.htm#outputs>qhull d</a> <a href=qh-optq.htm#Qbb>Qbb</a> <a href=qh-optq.htm#Qx>Qx</a>'
|
||||
in 4-d and higher. It disables the following Qhull
|
||||
<a href=qh-quick.htm#options>options</a>: <i>d n v H U Qb QB Qc Qf Qg Qi
|
||||
Qm Qr QR Qv Qx TR E V FC Fi Fo Fp Ft FV Q0,etc</i>.
|
||||
|
||||
|
||||
<p><b>Copyright © 1995-2015 C.B. Barber</b></p>
|
||||
|
||||
<hr>
|
||||
|
||||
<h3><a href="#TOP">»</a><a name="synopsis">qdelaunay synopsis</a></h3>
|
||||
|
||||
<pre>
|
||||
qdelaunay- compute the Delaunay triangulation.
|
||||
input (stdin): dimension, number of points, point coordinates
|
||||
comments start with a non-numeric character
|
||||
|
||||
options (qdelaun.htm):
|
||||
Qt - triangulated output
|
||||
QJ - joggle input instead of merging facets
|
||||
Qu - furthest-site Delaunay triangulation
|
||||
Tv - verify result: structure, convexity, and in-circle test
|
||||
. - concise list of all options
|
||||
- - one-line description of all options
|
||||
|
||||
output options (subset):
|
||||
s - summary of results (default)
|
||||
i - vertices incident to each Delaunay region
|
||||
Fx - extreme points (vertices of the convex hull)
|
||||
o - OFF format (shows the points lifted to a paraboloid)
|
||||
G - Geomview output (2-d and 3-d points lifted to a paraboloid)
|
||||
m - Mathematica output (2-d inputs lifted to a paraboloid)
|
||||
QVn - print Delaunay regions that include point n, -n if not
|
||||
TO file- output results to file, may be enclosed in single quotes
|
||||
|
||||
examples:
|
||||
rbox c P0 D2 | qdelaunay s o rbox c P0 D2 | qdelaunay i
|
||||
rbox c P0 D3 | qdelaunay Fv Qt rbox c P0 D2 | qdelaunay s Qu Fv
|
||||
rbox c G1 d D2 | qdelaunay s i rbox c G1 d D2 | qdelaunay s i Qt
|
||||
rbox M3,4 z 100 D2 | qdelaunay s rbox M3,4 z 100 D2 | qdelaunay s Qt
|
||||
</pre>
|
||||
|
||||
|
||||
<h3><a href="#TOP">»</a><a name="input">qdelaunay
|
||||
input</a></h3>
|
||||
|
||||
<blockquote>
|
||||
<p>The input data on <tt>stdin</tt> consists of:</p>
|
||||
<ul>
|
||||
<li>dimension
|
||||
<li>number of points</li>
|
||||
<li>point coordinates</li>
|
||||
</ul>
|
||||
|
||||
<p>Use I/O redirection (e.g., qdelaunay < data.txt), a pipe (e.g., rbox 10 | qdelaunay),
|
||||
or the '<a href=qh-optt.htm#TI>TI</a>' option (e.g., qdelaunay TI data.txt).
|
||||
|
||||
<p>For example, this is four cocircular points inside a square. Its Delaunay
|
||||
triangulation contains 8 triangles and one four-sided
|
||||
figure.
|
||||
<p>
|
||||
<blockquote>
|
||||
<tt>rbox s 4 W0 c G1 D2 > data</tt>
|
||||
<blockquote><pre>
|
||||
2 RBOX s 4 W0 c D2
|
||||
8
|
||||
-0.4941988586954018 -0.07594397977563715
|
||||
-0.06448037284989526 0.4958248496365813
|
||||
0.4911154367094632 0.09383830681375946
|
||||
-0.348353580869097 -0.3586778257652367
|
||||
-1 -1
|
||||
-1 1
|
||||
1 -1
|
||||
1 1
|
||||
</pre></blockquote>
|
||||
|
||||
<p><tt>qdelaunay s i < data</tt>
|
||||
<blockquote><pre>
|
||||
|
||||
Delaunay triangulation by the convex hull of 8 points in 3-d
|
||||
|
||||
Number of input sites: 8
|
||||
Number of Delaunay regions: 9
|
||||
Number of non-simplicial Delaunay regions: 1
|
||||
|
||||
Statistics for: RBOX s 4 W0 c D2 | QDELAUNAY s i
|
||||
|
||||
Number of points processed: 8
|
||||
Number of hyperplanes created: 18
|
||||
Number of facets in hull: 10
|
||||
Number of distance tests for qhull: 33
|
||||
Number of merged facets: 2
|
||||
Number of distance tests for merging: 102
|
||||
CPU seconds to compute hull (after input): 0.028
|
||||
|
||||
9
|
||||
1 7 5
|
||||
6 3 4
|
||||
2 3 6
|
||||
7 2 6
|
||||
2 7 1
|
||||
0 5 4
|
||||
3 0 4
|
||||
0 1 5
|
||||
1 0 3 2
|
||||
</pre></blockquote>
|
||||
</blockquote>
|
||||
|
||||
</blockquote>
|
||||
<h3><a href="#TOP">»</a><a name="outputs">qdelaunay
|
||||
outputs</a></h3>
|
||||
<blockquote>
|
||||
|
||||
<p>These options control the output of Delaunay triangulations:</p>
|
||||
<blockquote>
|
||||
|
||||
<dl compact>
|
||||
<dd><b>Delaunay regions</b></dd>
|
||||
<dt><a href="qh-opto.htm#i">i</a></dt>
|
||||
<dd>list input sites for each Delaunay region. The first line is the number of regions. The
|
||||
remaining lines list the input sites for each region. The regions are
|
||||
oriented. In 3-d and
|
||||
higher, report cospherical sites by adding extra points. Use triangulated
|
||||
output ('<a href="qh-optq.htm#Qt">Qt</a>') to avoid non-simpicial regions. For the circle-in-square example,
|
||||
eight Delaunay regions are triangular and the ninth has four input sites.</dd>
|
||||
<dt><a href="qh-optf.htm#Fv">Fv</a></dt>
|
||||
<dd>list input sites for each Delaunay region. The first line is the number of regions.
|
||||
Each remaining line starts with the number of input sites. The regions
|
||||
are unoriented. For the circle-in-square example,
|
||||
eight Delaunay regions are triangular and the ninth has four input sites.</dd>
|
||||
<dt><a href="qh-optf.htm#Fn">Fn</a></dt>
|
||||
<dd>list neighboring regions for each Delaunay region. The first line is the
|
||||
number of regions. Each remaining line starts with the number of
|
||||
neighboring regions. Negative indices (e.g., <em>-1</em>) indicate regions
|
||||
outside of the Delaunay triangulation.
|
||||
For the circle-in-square example, the four regions on the square are neighbors to
|
||||
the region-at-infinity.</dd>
|
||||
<dt><a href="qh-optf.htm#FN">FN</a></dt>
|
||||
<dd>list the Delaunay regions for each input site. The first line is the
|
||||
total number of input sites. Each remaining line starts with the number of
|
||||
Delaunay regions. Negative indices (e.g., <em>-1</em>) indicate regions
|
||||
outside of the Delaunay triangulation.
|
||||
For the circle-in-square example, each point on the circle belongs to four
|
||||
Delaunay regions. Use '<a href="qh-optq.htm#Qc">Qc</a> FN'
|
||||
to include coincident input sites and deleted vertices. </dd>
|
||||
<dt><a href="qh-optf.htm#Fa">Fa</a></dt>
|
||||
<dd>print area for each Delaunay region. The first line is the number of regions.
|
||||
The areas follow, one line per region. For the circle-in-square example, the
|
||||
cocircular region has area 0.4. </dd>
|
||||
<dt> </dt>
|
||||
<dt> </dt>
|
||||
<dd><b>Input sites</b></dd>
|
||||
<dt><a href="qh-optf.htm#Fc">Fc</a></dt>
|
||||
<dd>list coincident input sites for each Delaunay region.
|
||||
The first line is the number of regions. The remaining lines start with
|
||||
the number of coincident sites and deleted vertices. Deleted vertices
|
||||
indicate highly degenerate input (see'<a href="qh-optf.htm#Fs">Fs</a>').
|
||||
A coincident site is assigned to one Delaunay
|
||||
region. Do not use '<a href="qh-optq.htm#QJn">QJ</a>' with 'Fc'; the joggle will separate
|
||||
coincident sites.</dd>
|
||||
<dt><a href="qh-optf.htm#FP">FP</a></dt>
|
||||
<dd>print coincident input sites with distance to
|
||||
nearest site (i.e., vertex). The first line is the
|
||||
number of coincident sites. Each remaining line starts with the point ID of
|
||||
an input site, followed by the point ID of a coincident point, its region, and distance.
|
||||
Includes deleted vertices which
|
||||
indicate highly degenerate input (see'<a href="qh-optf.htm#Fs">Fs</a>').
|
||||
Do not use '<a href="qh-optq.htm#QJn">QJ</a>' with 'FP'; the joggle will separate
|
||||
coincident sites.</dd>
|
||||
<dt><a href="qh-optf.htm#Fx">Fx</a></dt>
|
||||
<dd>list extreme points of the input sites. These points are on the
|
||||
boundary of the convex hull. The first line is the number of
|
||||
extreme points. Each point is listed, one per line. The circle-in-square example
|
||||
has four extreme points.</dd>
|
||||
<dt> </dt>
|
||||
<dt> </dt>
|
||||
<dd><b>General</b></dd>
|
||||
<dt><a href="qh-optf.htm#FA">FA</a></dt>
|
||||
<dd>compute total area for '<a href="qh-opto.htm#s">s</a>'
|
||||
and '<a href="qh-optf.htm#FS">FS</a>'</dd>
|
||||
<dt><a href="qh-opto.htm#o">o</a></dt>
|
||||
<dd>print lower facets of the corresponding convex hull (a
|
||||
paraboloid)</dd>
|
||||
<dt><a href="qh-opto.htm#m">m</a></dt>
|
||||
<dd>Mathematica output for the lower facets of the paraboloid (2-d triangulations).</dd>
|
||||
<dt><a href="qh-optf.htm#FM">FM</a></dt>
|
||||
<dd>Maple output for the lower facets of the paraboloid (2-d triangulations).</dd>
|
||||
<dt><a href="qh-optg.htm#G">G</a></dt>
|
||||
<dd>Geomview output for the paraboloid (2-d or 3-d triangulations).</dd>
|
||||
<dt><a href="qh-opto.htm#s">s</a></dt>
|
||||
<dd>print summary for the Delaunay triangulation. Use '<a
|
||||
href="qh-optf.htm#Fs">Fs</a>' and '<a
|
||||
href="qh-optf.htm#FS">FS</a>' for numeric data.</dd>
|
||||
</dl>
|
||||
</blockquote>
|
||||
|
||||
</blockquote>
|
||||
<h3><a href="#TOP">»</a><a name="controls">qdelaunay
|
||||
controls</a></h3>
|
||||
<blockquote>
|
||||
|
||||
<p>These options provide additional control:</p>
|
||||
<blockquote>
|
||||
|
||||
<dl compact>
|
||||
<dt><a href="qh-optq.htm#Qt">Qt</a></dt>
|
||||
<dd>triangulated output. Qhull triangulates non-simplicial facets. It may produce
|
||||
degenerate facets of zero area.</dd>
|
||||
<dt><a href="qh-optq.htm#QJn">QJ</a></dt>
|
||||
<dd>joggle the input to avoid cospherical and coincident
|
||||
sites. It is less accurate than triangulated output ('Qt').</dd>
|
||||
<dt><a href="qh-optq.htm#Qu">Qu</a></dt>
|
||||
<dd>compute the <a href="qdelau_f.htm">furthest-site Delaunay triangulation</a>.</dd>
|
||||
<dt><a href="qh-optq.htm#Qz">Qz</a></dt>
|
||||
<dd>add a point above the paraboloid to reduce precision
|
||||
errors. Use it for nearly cocircular/cospherical input
|
||||
(e.g., 'rbox c | qdelaunay Qz'). The point is printed for
|
||||
options '<a href="qh-optf.htm#Ft">Ft</a>' and '<a
|
||||
href="qh-opto.htm#o">o</a>'.</dd>
|
||||
<dt><a href="qh-optq.htm#QVn">QVn</a></dt>
|
||||
<dd>select facets adjacent to input site <em>n</em> (marked
|
||||
'good').</dd>
|
||||
<dt><a href="qh-optt.htm#Tv">Tv</a></dt>
|
||||
<dd>verify result.</dd>
|
||||
<dt><a href="qh-optt.htm#TO">TI file</a></dt>
|
||||
<dd>input data from file. The filename may not use spaces or quotes.</dd>
|
||||
<dt><a href="qh-optt.htm#TO">TO file</a></dt>
|
||||
<dd>output results to file. Use single quotes if the filename
|
||||
contains spaces (e.g., <tt>TO 'file with spaces.txt'</tt></dd>
|
||||
<dt><a href="qh-optt.htm#TFn">TFn</a></dt>
|
||||
<dd>report progress after constructing <em>n</em> facets</dd>
|
||||
<dt><a href="qh-optp.htm#PDk">PDk:1</a></dt>
|
||||
<dd>include upper and lower facets in the output. Set <em>k</em>
|
||||
to the last dimension (e.g., 'PD2:1' for 2-d inputs). </dd>
|
||||
<dt><a href="qh-opto.htm#f">f</a></dt>
|
||||
<dd>facet dump. Print the data structure for each facet (i.e., Delaunay region).</dd>
|
||||
</dl>
|
||||
</blockquote>
|
||||
|
||||
</blockquote>
|
||||
<h3><a href="#TOP">»</a><a name="graphics">qdelaunay
|
||||
graphics</a></h3>
|
||||
<blockquote>
|
||||
|
||||
<p>For 2-d and 3-d Delaunay triangulations, Geomview ('qdelaunay <a
|
||||
href="qh-optg.htm#G">G</a>') displays the corresponding convex
|
||||
hull (a paraboloid). </p>
|
||||
|
||||
<p>To view a 2-d Delaunay triangulation, use 'qdelaunay <a
|
||||
href="qh-optg.htm#GDn">GrD2</a>' to drop the last dimension. This
|
||||
is the same as viewing the hull without perspective (see
|
||||
Geomview's 'cameras' menu). </p>
|
||||
|
||||
<p>To view a 3-d Delaunay triangulation, use 'qdelaunay <a
|
||||
href="qh-optg.htm#GDn">GrD3</a>' to drop the last dimension. You
|
||||
may see extra edges. These are interior edges that Geomview moves
|
||||
towards the viewer (see 'lines closer' in Geomview's camera
|
||||
options). Use option '<a href="qh-optg.htm#Gt">Gt</a>' to make
|
||||
the outer ridges transparent in 3-d. See <a
|
||||
href="qh-eg.htm#delaunay">Delaunay and Voronoi examples</a>.</p>
|
||||
|
||||
<p>For 2-d Delaunay triangulations, Mathematica ('<a
|
||||
href="qh-opto.htm#m">m</a>') and Maple ('<a
|
||||
href="qh-optf.htm#FM">FM</a>') output displays the lower facets of the corresponding convex
|
||||
hull (a paraboloid). </p>
|
||||
|
||||
<p>For 2-d, furthest-site Delaunay triangulations, Maple and Mathematica output ('<a
|
||||
href="qh-optq.htm#Qu">Qu</a> <a
|
||||
href="qh-opto.htm#m">m</a>') displays the upper facets of the corresponding convex
|
||||
hull (a paraboloid). </p>
|
||||
|
||||
</blockquote>
|
||||
<h3><a href="#TOP">»</a><a name="notes">qdelaunay
|
||||
notes</a></h3>
|
||||
<blockquote>
|
||||
|
||||
<p>You can simplify the Delaunay triangulation by enclosing the input
|
||||
sites in a large square or cube. This is particularly recommended
|
||||
for cocircular or cospherical input data.
|
||||
|
||||
<p>A non-simplicial Delaunay region indicates nearly cocircular or
|
||||
cospherical input sites. To avoid non-simplicial regions either triangulate
|
||||
the output ('<a href="qh-optq.htm#Qt">Qt</a>') or joggle
|
||||
the input ('<a href="qh-optq.htm#QJn">QJ</a>'). Triangulated output
|
||||
is more accurate than joggled input. Alternatively, use an <a
|
||||
href="qh-impre.htm#exact">exact arithmetic code</a>.</p>
|
||||
|
||||
<p>Delaunay triangulations do not include facets that are
|
||||
coplanar with the convex hull of the input sites. A facet is
|
||||
coplanar if the last coefficient of its normal is
|
||||
nearly zero (see <a href="../src/libqhull/user.h#ZEROdelaunay">qh_ZEROdelaunay</a>).
|
||||
|
||||
<p>See <a href=qh-impre.htm#delaunay>Imprecision issues :: Delaunay triangulations</a>
|
||||
for a discussion of precision issues. Deleted vertices indicate
|
||||
highly degenerate input. They are listed in the summary output and
|
||||
option '<a href="qh-optf.htm#Fs">Fs</a>'.</p>
|
||||
|
||||
<p>To compute the Delaunay triangulation of points on a sphere,
|
||||
compute their convex hull. If the sphere is the unit sphere at
|
||||
the origin, the facet normals are the Voronoi vertices of the
|
||||
input. The points may be restricted to a hemisphere. [S. Fortune]
|
||||
</p>
|
||||
|
||||
<p>The 3-d Delaunay triangulation of regular points on a half
|
||||
spiral (e.g., 'rbox 100 l | qdelaunay') has quadratic size, while the Delaunay triangulation
|
||||
of random 3-d points is
|
||||
approximately linear for reasonably sized point sets.
|
||||
|
||||
<p>With the <a href="qh-code.htm#library">Qhull library</a>, you
|
||||
can use <tt>qh_findbestfacet</tt> in <tt>poly2.c</tt> to locate the facet
|
||||
that contains a point. You should first lift the point to the
|
||||
paraboloid (i.e., the last coordinate is the sum of the squares
|
||||
of the point's coordinates -- <tt>qh_setdelaunay</tt>). Do not use options
|
||||
'<a href="qh-optq.htm#Qbb">Qbb</a>', '<a href="qh-optq.htm#QbB">QbB</a>',
|
||||
'<a href="qh-optq.htm#Qbk">Qbk:n</a>', or '<a
|
||||
href="qh-optq.htm#QBk">QBk:n</a>' since these scale the last
|
||||
coordinate. </p>
|
||||
|
||||
<p>If a point is interior to the convex hull of the input set, it
|
||||
is interior to the adjacent vertices of the Delaunay
|
||||
triangulation. This is demonstrated by the following pipe for
|
||||
point 0:
|
||||
|
||||
<pre>
|
||||
qdelaunay <data s FQ QV0 p | qconvex s Qb3:0B3:0 p
|
||||
</pre>
|
||||
|
||||
<p>The first call to qdelaunay returns the neighboring points of
|
||||
point 0 in the Delaunay triangulation. The second call to qconvex
|
||||
returns the vertices of the convex hull of these points (after
|
||||
dropping the lifted coordinate). If point 0 is interior to the
|
||||
original point set, it is interior to the reduced point set. </p>
|
||||
|
||||
</blockquote>
|
||||
<h3><a href="#TOP">»</a><a name="conventions">qdelaunay conventions</a></h3>
|
||||
<blockquote>
|
||||
|
||||
<p>The following terminology is used for Delaunay triangulations
|
||||
in Qhull for dimension <i>d</i>. The underlying structure is the
|
||||
lower facets of a convex hull in dimension <i>d+1</i>. For
|
||||
further information, see <a href="index.htm#structure">data
|
||||
structures</a> and <a href="qconvex.htm#conventions">convex hull
|
||||
conventions</a>.</p>
|
||||
<blockquote>
|
||||
<ul>
|
||||
<li><em>input site</em> - a point in the input (one dimension
|
||||
lower than a point on the convex hull)</li>
|
||||
<li><em>point</em> - a point has <i>d+1</i> coordinates. The
|
||||
last coordinate is the sum of the squares of the input
|
||||
site's coordinates</li>
|
||||
<li><em>coplanar point</em> - a <em>coincident</em>
|
||||
input site or a deleted vertex. Deleted vertices
|
||||
indicate highly degenerate input.</li>
|
||||
<li><em>vertex</em> - a point on the paraboloid. It
|
||||
corresponds to a unique input site. </li>
|
||||
<li><em>point-at-infinity</em> - a point added above the
|
||||
paraboloid by option '<a href="qh-optq.htm#Qz">Qz</a>'</li>
|
||||
<li><em>lower facet</em> - a facet corresponding to a
|
||||
Delaunay region. The last coefficient of its normal is
|
||||
clearly negative.</li>
|
||||
<li><em>upper facet</em> - a facet corresponding to a
|
||||
furthest-site Delaunay region. The last coefficient of
|
||||
its normal is clearly positive. </li>
|
||||
<li><em>Delaunay region</em> - a
|
||||
lower facet projected to the input sites</li>
|
||||
<li><em>upper Delaunay region</em> - an upper facet projected
|
||||
to the input sites</li>
|
||||
<li><em>non-simplicial facet</em> - more than <em>d</em>
|
||||
input sites are cocircular or cospherical</li>
|
||||
<li><em>good facet</em> - a Delaunay region with optional
|
||||
restrictions by '<a href="qh-optq.htm#QVn">QVn</a>', etc.</li>
|
||||
</ul>
|
||||
</blockquote>
|
||||
</blockquote>
|
||||
<h3><a href="#TOP">»</a><a name="options">qdelaunay options</a></h3>
|
||||
|
||||
<pre>
|
||||
qdelaunay- compute the Delaunay triangulation
|
||||
http://www.qhull.org
|
||||
|
||||
input (stdin):
|
||||
first lines: dimension and number of points (or vice-versa).
|
||||
other lines: point coordinates, best if one point per line
|
||||
comments: start with a non-numeric character
|
||||
|
||||
options:
|
||||
Qt - triangulated output
|
||||
QJ - joggle input instead of merging facets
|
||||
Qu - compute furthest-site Delaunay triangulation
|
||||
|
||||
Qhull control options:
|
||||
QJn - randomly joggle input in range [-n,n]
|
||||
Qs - search all points for the initial simplex
|
||||
Qz - add point-at-infinity to Delaunay triangulation
|
||||
QGn - print Delaunay region if visible from point n, -n if not
|
||||
QVn - print Delaunay regions that include point n, -n if not
|
||||
|
||||
Trace options:
|
||||
T4 - trace at level n, 4=all, 5=mem/gauss, -1= events
|
||||
Tc - check frequently during execution
|
||||
Ts - print statistics
|
||||
Tv - verify result: structure, convexity, and in-circle test
|
||||
Tz - send all output to stdout
|
||||
TFn - report summary when n or more facets created
|
||||
TI file - input data from file, no spaces or single quotes
|
||||
TO file - output results to file, may be enclosed in single quotes
|
||||
TPn - turn on tracing when point n added to hull
|
||||
TMn - turn on tracing at merge n
|
||||
TWn - trace merge facets when width > n
|
||||
TVn - stop qhull after adding point n, -n for before (see TCn)
|
||||
TCn - stop qhull after building cone for point n (see TVn)
|
||||
|
||||
Precision options:
|
||||
Cn - radius of centrum (roundoff added). Merge facets if non-convex
|
||||
An - cosine of maximum angle. Merge facets if cosine > n or non-convex
|
||||
C-0 roundoff, A-0.99/C-0.01 pre-merge, A0.99/C0.01 post-merge
|
||||
Rn - randomly perturb computations by a factor of [1-n,1+n]
|
||||
Wn - min facet width for outside point (before roundoff)
|
||||
|
||||
Output formats (may be combined; if none, produces a summary to stdout):
|
||||
f - facet dump
|
||||
G - Geomview output (see below)
|
||||
i - vertices incident to each Delaunay region
|
||||
m - Mathematica output (2-d only, lifted to a paraboloid)
|
||||
o - OFF format (dim, points, and facets as a paraboloid)
|
||||
p - point coordinates (lifted to a paraboloid)
|
||||
s - summary (stderr)
|
||||
|
||||
More formats:
|
||||
Fa - area for each Delaunay region
|
||||
FA - compute total area for option 's'
|
||||
Fc - count plus coincident points for each Delaunay region
|
||||
Fd - use cdd format for input (homogeneous with offset first)
|
||||
FD - use cdd format for numeric output (offset first)
|
||||
FF - facet dump without ridges
|
||||
FI - ID of each Delaunay region
|
||||
Fm - merge count for each Delaunay region (511 max)
|
||||
FM - Maple output (2-d only, lifted to a paraboloid)
|
||||
Fn - count plus neighboring region for each Delaunay region
|
||||
FN - count plus neighboring region for each point
|
||||
FO - options and precision constants
|
||||
FP - nearest point and distance for each coincident point
|
||||
FQ - command used for qdelaunay
|
||||
Fs - summary: #int (8), dimension, #points, tot vertices, tot facets,
|
||||
for output: #vertices, #Delaunay regions,
|
||||
#coincident points, #non-simplicial regions
|
||||
#real (2), max outer plane, min vertex
|
||||
FS - sizes: #int (0)
|
||||
#real (2), tot area, 0
|
||||
Fv - count plus vertices for each Delaunay region
|
||||
Fx - extreme points of Delaunay triangulation (on convex hull)
|
||||
|
||||
Geomview options (2-d and 3-d)
|
||||
Ga - all points as dots
|
||||
Gp - coplanar points and vertices as radii
|
||||
Gv - vertices as spheres
|
||||
Gi - inner planes only
|
||||
Gn - no planes
|
||||
Go - outer planes only
|
||||
Gc - centrums
|
||||
Gh - hyperplane intersections
|
||||
Gr - ridges
|
||||
GDn - drop dimension n in 3-d and 4-d output
|
||||
Gt - transparent outer ridges to view 3-d Delaunay
|
||||
|
||||
Print options:
|
||||
PAn - keep n largest Delaunay regions by area
|
||||
Pdk:n - drop facet if normal[k] <= n (default 0.0)
|
||||
PDk:n - drop facet if normal[k] >= n
|
||||
Pg - print good Delaunay regions (needs 'QGn' or 'QVn')
|
||||
PFn - keep Delaunay regions whose area is at least n
|
||||
PG - print neighbors of good regions (needs 'QGn' or 'QVn')
|
||||
PMn - keep n Delaunay regions with most merges
|
||||
Po - force output. If error, output neighborhood of facet
|
||||
Pp - do not report precision problems
|
||||
|
||||
. - list of all options
|
||||
- - one line descriptions of all options
|
||||
</pre>
|
||||
|
||||
<!-- Navigation links -->
|
||||
<hr>
|
||||
|
||||
<p><b>Up:</b> <a href="http://www.qhull.org">Home page</a> for Qhull<br>
|
||||
<b>Up:</b> <a href="index.htm#TOC">Qhull manual</a>: Table of Contents<br>
|
||||
<b>To:</b> <a href="qh-quick.htm#programs">Programs</a>
|
||||
• <a href="qh-quick.htm#options">Options</a>
|
||||
• <a href="qh-opto.htm#output">Output</a>
|
||||
• <a href="qh-optf.htm#format">Formats</a>
|
||||
• <a href="qh-optg.htm#geomview">Geomview</a>
|
||||
• <a href="qh-optp.htm#print">Print</a>
|
||||
• <a href="qh-optq.htm#qhull">Qhull</a>
|
||||
• <a href="qh-optc.htm#prec">Precision</a>
|
||||
• <a href="qh-optt.htm#trace">Trace</a>
|
||||
• <a href="../src/libqhull_r/index.htm">Functions</a><br>
|
||||
<b>To:</b> <a href="#synopsis">sy</a>nopsis
|
||||
• <a href="#input">in</a>put • <a href="#outputs">ou</a>tputs
|
||||
• <a href="#controls">co</a>ntrols • <a href="#graphics">gr</a>aphics
|
||||
• <a href="#notes">no</a>tes • <a href="#conventions">co</a>nventions
|
||||
• <a href="#options">op</a>tions
|
||||
<!-- GC common information -->
|
||||
<hr>
|
||||
|
||||
<p><a href="http://www.geom.uiuc.edu/"><img src="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: Sept. 25, 1995 --- <!-- hhmts start --> Last modified: see top <!-- hhmts end --> </p>
|
||||
</body>
|
||||
</html>
|
Loading…
Add table
Add a link
Reference in a new issue