Class ConvexHull

java.lang.Object
org.locationtech.jts.algorithm.ConvexHull

public class ConvexHull extends Object
Computes the convex hull of a Geometry. The convex hull is the smallest convex Geometry that contains all the points in the input Geometry.

Uses the Graham Scan algorithm.

Incorporates heuristics to optimize checking for degenerate results, and to reduce the number of points processed for large inputs.

Version:
1.7
  • Constructor Details

    • ConvexHull

      public ConvexHull(Geometry geometry)
      Create a new convex hull construction for the input Geometry.
    • ConvexHull

      public ConvexHull(Coordinate[] pts, GeometryFactory geomFactory)
      Create a new convex hull construction for the input Coordinate array.
  • Method Details

    • getConvexHull

      public Geometry getConvexHull()
      Returns a Geometry that represents the convex hull of the input geometry. The returned geometry contains the minimal number of points needed to represent the convex hull. In particular, no more than two consecutive points will be collinear.
      Returns:
      if the convex hull contains 3 or more points, a Polygon; 2 points, a LineString; 1 point, a Point; 0 points, an empty GeometryCollection.
    • toCoordinateArray

      protected Coordinate[] toCoordinateArray(Stack<Coordinate> stack)
      An alternative to Stack.toArray, which is not present in earlier versions of Java.