Documentation

# convhulln

N-D convex hull

## Syntax

```K = convhulln(X) K = convhulln(X,options) [K,v] = convhulln(...) ```

## Description

`K = convhulln(X)` returns the indices `K` of the points in `X` that make up the facets of the convex hull of `X`. If `X` contains 2-D coordinates or 3-D coordinates, then the facets form triangles or tetrahedra, respectively. In general, `X` can be an `m`-by-`n` array representing `m` points in `n`-dimensional space. If the convex hull has `p` facets then `K` has size `p`-by-`n`.

`convhulln` uses Qhull.

`K = convhulln(X,options)` specifies a cell array of Qhull options. The default options are:

• `{'Qt'}` for 2-, 3-. and 4-dimensional input

• `{'Qt','Qx'}` for 5-dimensional input and higher.

If `options` is `[]`, the default options are used. For more information on Qhull and its options, see `http://www.qhull.org/`.

`[K,v] = convhulln(...)` also returns the volume `v` of the convex hull.

## Visualization

Plotting the output of `convhulln` depends on the value of `n`:

• For `n = 2`, use `plot` as you would for `convhull`.

• For `n = 3`, you can use `trisurf` to plot the output. The calling sequence is

```K = convhulln(X); trisurf(K,X(:,1),X(:,2),X(:,3))```
• You cannot plot `convhulln` output for ```n > 3```.

## Examples

The following example illustrates the `options` input for `convhulln`. The following commands

```X = [0 0; 0 1e-10; 0 0; 1 1]; K = convhulln(X)```

return a warning.

```Warning: qhull precision warning: The initial hull is narrow (cosine of min. angle is 0.9999999999999998). A coplanar point may lead to a wide facet. Options 'QbB' (scale to unit box) or 'Qbb' (scale last coordinate) may remove this warning. Use 'Pp' to skip this warning.```

To suppress the warning, use the option `'Pp'`. The following command passes the option `'Pp'`, along with the default `'Qt'`, to `convhulln`.

```K = convhulln(X,{'Qt','Pp'}) K = 1 4 1 2 4 2```

## Algorithms

`convhulln` is based on Qhull . For information about Qhull, see `http://www.qhull.org/`. For copyright information, see `http://www.qhull.org/COPYING.txt`.

## References

 Barber, C. B., D.P. Dobkin, and H.T. Huhdanpaa, “The Quickhull Algorithm for Convex Hulls,” ACM Transactions on Mathematical Software, Vol. 22, No. 4, Dec. 1996, p. 469-483.

Download ebook