Qhull computes the convex hull, Delaunay triangulation, Voronoi diagram,
halfspace intersection about a point, furthest-site Delaunay
triangulation, and furthest-site Voronoi diagram. The source code runs in
2-d, 3-d, 4-d, and higher dimensions. Qhull implements the Quickhull
algorithm for computing the convex hull. It handles roundoff
errors from floating point arithmetic. It computes volumes,
surface areas, and approximations to the convex hull.
Qhull does not support triangulation of non-convex surfaces, mesh generation of non-convex objects, medium-sized inputs in 9-D and higher, alpha shapes, weighted Voronoi diagrams, Voronoi volumes, or constrained Delaunay triangulations,
If you call Qhull from your program, please use reentrant Qhull (libqhull_r or libqhullstatic_r). If you use Qhull 2003.1, please upgrade or apply poly.c-qh_gethash.patch.
Qhull Documentation and Support
FAQs and Newsgroups
The program includes options for input transformations, randomization, tracing, multiple output formats, and execution statistics. The program can be called from within your application.
You can view the results in 2-d, 3-d and 4-d with Geomview. An alternative is VTK.
For an article about Qhull, download from ACM or CiteSeer:
Barber, C.B., Dobkin, D.P., and Huhdanpaa, H.T., "The Quickhull algorithm for convex hulls," ACM Trans. on Mathematical Software, 22(4):469-483, Dec 1996, http://www.qhull.org
The convex hull of a set of points is the smallest convex set that contains the points. This article presents a practical convex hull algorithm that combines the two-dimensional Quickhull Algorithm with the general dimension Beneath-Beyond Algorithm. It is similar to the randomized, incremental algorithms for convex hull and Delaunay triangulation. We provide empirical evidence that the algorithm runs faster when the input contains non-extreme points, and that it uses less memory.
Computational geometry algorithms have traditionally assumed that input sets are well behaved. When an algorithm is implemented with floating point arithmetic, this assumption can lead to serious errors. We briefly describe a solution to this problem when computing the convex hull in two, three, or four dimensions. The output is a set of "thick" facets that contain all possible exact convex hulls of the input. A variation is effective in five or more dimensions.
Up: Past Software
Projects of the Geometry Center
URL: http://www.qhull.org News Scholar Images GitHub
To: Download Readme Manual Programs Options FAQ Code Functions
The Geometry Center Home Page
Comments to: firstname.lastname@example.org
Created: May 17 1995 ---