Class PreparedPolygonContains


class PreparedPolygonContains extends AbstractPreparedPolygonContains
Computes the contains spatial relationship predicate for a PreparedPolygon relative to all other Geometry classes. Uses short-circuit tests and indexing to improve performance.

It is not possible to short-circuit in all cases, in particular in the case where the test geometry touches the polygon linework. In this case full topology must be computed.

  • Constructor Details

    • PreparedPolygonContains

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

    • contains

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

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

      protected boolean fullTopologicalPredicate(Geometry geom)
      Computes the full topological contains predicate. Used when short-circuit tests are not conclusive.
      Specified by:
      fullTopologicalPredicate in class AbstractPreparedPolygonContains
      Parameters:
      geom - the test geometry
      Returns:
      true if this prepared polygon contains the test geometry