Class PreparedPolygonContainsProperly

java.lang.Object
org.locationtech.jts.geom.prep.PreparedPolygonPredicate
org.locationtech.jts.geom.prep.PreparedPolygonContainsProperly

class PreparedPolygonContainsProperly extends PreparedPolygonPredicate
Computes the containsProperly spatial relationship predicate for PreparedPolygons relative to all other Geometry classes. Uses short-circuit tests and indexing to improve performance.

A Geometry A containsProperly another Geometry B iff all points of B are contained in the Interior of A. Equivalently, B is contained in A AND B does not intersect the Boundary of A.

The advantage to using this predicate is that it can be computed efficiently, with no need to compute topology at individual points. In a situation with many geometries intersecting the boundary of the target geometry, this can make a performance difference.

  • Constructor Details

    • PreparedPolygonContainsProperly

      public PreparedPolygonContainsProperly(PreparedPolygon prepPoly)
      Creates an instance of this operation.
      Parameters:
      prepPoly - the PreparedPolygon to evaluate
  • Method Details

    • containsProperly

      public static boolean containsProperly(PreparedPolygon prep, Geometry geom)
      Computes the containsProperly predicate between a PreparedPolygon and a Geometry.
      Parameters:
      prep - the prepared polygon
      geom - a test geometry
      Returns:
      true if the polygon properly contains the geometry
    • containsProperly

      public boolean containsProperly(Geometry geom)
      Tests whether this PreparedPolygon containsProperly a given geometry.
      Parameters:
      geom - the test geometry
      Returns:
      true if the test geometry is contained properly