Class MinimumAreaRectangle

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

public class MinimumAreaRectangle extends Object
Computes the minimum-area rectangle enclosing a Geometry. Unlike the Envelope, the rectangle may not be axis-parallel.

The first step in the algorithm is computing the convex hull of the Geometry. If the input Geometry is known to be convex, a hint can be supplied to avoid this computation.

In degenerate cases the minimum enclosing geometry may be a LineString or a Point.

The minimum-area enclosing rectangle does not necessarily have the minimum possible width. Use MinimumDiameter to compute this.

See Also:
  • Constructor Details

    • MinimumAreaRectangle

      public MinimumAreaRectangle(Geometry inputGeom)
      Compute a minimum-area rectangle for a given Geometry.
      Parameters:
      inputGeom - a Geometry
    • MinimumAreaRectangle

      public MinimumAreaRectangle(Geometry inputGeom, boolean isConvex)
      Compute a minimum rectangle for a Geometry, with a hint if the geometry is convex (e.g. a convex Polygon or LinearRing, or a two-point LineString, or a Point).
      Parameters:
      inputGeom - a Geometry which is convex
      isConvex - true if the input geometry is convex
  • Method Details

    • getMinimumRectangle

      public static Geometry getMinimumRectangle(Geometry geom)
      Gets the minimum-area rectangular Polygon which encloses the input geometry. If the convex hull of the input is degenerate (a line or point) a LineString or Point is returned.
      Parameters:
      geom - the geometry
      Returns:
      the minimum rectangle enclosing the geometry