Compute Convex Hull of a Set of Points
Computes the subset of points which lie on the convex hull of the set of points specified.
chull(x, y = NULL)
- x, y
- coordinate vectors of points. This can be specified as two
y, a 2-column matrix
x, a list
xwith two components, etc, see
xy.coords is used to interpret the specification of the
points. Infinite, missing and
NaN values are not allowed.
The algorithm is that given by Eddy (1977).
- An integer vector giving the indices of the unique points lying on the convex hull, in clockwise order. (The first will be returned for duplicate points.)
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.
X <- matrix(stats::rnorm(2000), ncol = 2) chull(X) # Example usage from graphics package plot(X, cex = 0.5) hpts <- chull(X) hpts <- c(hpts, hpts) lines(X[hpts, ])