chull {grDevices} | R Documentation |

## Compute Convex Hull of a Set of Points

### Description

Computes the subset of points which lie on the convex hull of the
set of points specified.

### Usage

chull(x, y = NULL)

### Arguments

`x, y` |
coordinate vectors of points. This can be specified as two
vectors `x` and `y` , a 2-column matrix `x` , a list
`x` with two components, etc, see `xy.coords` . |

### Details

`xy.coords`

is used to interpret the
specification of the points. The algorithm is that given by Eddy (1977).

‘Peeling’ as used in the S function `chull`

can be
implemented by calling `chull`

recursively.

### Value

An integer vector giving the indices of the points lying on the
convex hull, in clockwise order.

### References

Becker, R. A., Chambers, J. M. and Wilks, A. R. (1988)
*The New S Language*.
Wadsworth & Brooks/Cole.

Eddy, W. F. (1977) A new convex hull algorithm for planar sets.
*ACM Transactions on Mathematical Software*, **3**, 398–403.

Eddy, W. F. (1977) Algorithm 523. CONVEX, A new convex hull
algorithm for planar sets[Z]. *ACM Transactions on
Mathematical Software*, **3**, 411–412.

### See Also

`xy.coords`

,`polygon`

### Examples

X <- matrix(rnorm(2000), ncol = 2)
chull(X)
## Not run:
# Example usage from graphics package
plot(X, cex = 0.5)
hpts <- chull(X)
hpts <- c(hpts, hpts[1])
lines(X[hpts, ])
## End(Not run)

[Package

*grDevices* version 2.2.1

Index]