com.vividsolutions.jts.geom.prep
Class PreparedPolygonContainsProperly

java.lang.Object
  extended by com.vividsolutions.jts.geom.prep.PreparedPolygonPredicate
      extended by com.vividsolutions.jts.geom.prep.PreparedPolygonContainsProperly

public 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.

Author:
Martin Davis

Field Summary
 
Fields inherited from class com.vividsolutions.jts.geom.prep.PreparedPolygonPredicate
prepPoly
 
Constructor Summary
PreparedPolygonContainsProperly(PreparedPolygon prepPoly)
          Creates an instance of this operation.
 
Method Summary
 boolean containsProperly(Geometry geom)
          Tests whether this PreparedPolygon containsProperly a given geometry.
static boolean containsProperly(PreparedPolygon prep, Geometry geom)
          Computes the containsProperly predicate between a PreparedPolygon and a Geometry.
 
Methods inherited from class com.vividsolutions.jts.geom.prep.PreparedPolygonPredicate
isAllTestComponentsInTarget, isAllTestComponentsInTargetInterior, isAnyTargetComponentInAreaTest, isAnyTestComponentInTarget, isAnyTestComponentInTargetInterior
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

PreparedPolygonContainsProperly

public PreparedPolygonContainsProperly(PreparedPolygon prepPoly)
Creates an instance of this operation.

Parameters:
prepPoly - the PreparedPolygon to evaluate
Method Detail

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