GEOS  3.9.1dev
Public Member Functions | Static Public Member Functions | Protected Member Functions | List of all members
geos::geom::prep::PreparedPolygonContains Class Reference

Computes the contains spatial relationship predicate for a PreparedPolygon relative to all other Geometry classes. More...

#include <PreparedPolygonContains.h>

Inheritance diagram for geos::geom::prep::PreparedPolygonContains:
[legend]
Collaboration diagram for geos::geom::prep::PreparedPolygonContains:
[legend]

Public Member Functions

 PreparedPolygonContains (const PreparedPolygon *const prepPoly)
 
bool contains (const geom::Geometry *geom)
 
- Public Member Functions inherited from geos::geom::prep::AbstractPreparedPolygonContains
 AbstractPreparedPolygonContains (const PreparedPolygon *const p_prepPoly)
 
 AbstractPreparedPolygonContains (const PreparedPolygon *const p_prepPoly, bool p_requireSomePointInInterior)
 
 ~AbstractPreparedPolygonContains () override
 
- Public Member Functions inherited from geos::geom::prep::PreparedPolygonPredicate
 PreparedPolygonPredicate (const PreparedPolygon *const p_prepPoly)
 Creates an instance of this operation. More...
 
virtual ~PreparedPolygonPredicate ()
 

Static Public Member Functions

static bool contains (const PreparedPolygon *const prep, const geom::Geometry *geom)
 

Protected Member Functions

bool fullTopologicalPredicate (const geom::Geometry *geom) override
 
- Protected Member Functions inherited from geos::geom::prep::AbstractPreparedPolygonContains
bool eval (const geom::Geometry *geom)
 
bool evalPointTestGeom (const geom::Geometry *geom, geom::Location outermostLoc)
 
- Protected Member Functions inherited from geos::geom::prep::PreparedPolygonPredicate
geom::Location getOutermostTestComponentLocation (const geom::Geometry *testGeom) const
 Returns the outermost Location among a test point from each components of the test geometry. More...
 
bool isAllTestComponentsInTargetInterior (const geom::Geometry *testGeom) const
 Tests whether all components of the test Geometry are contained in the interior of the target geometry. More...
 
bool isAnyTestComponentInTarget (const geom::Geometry *testGeom) const
 Tests whether any component of the test Geometry intersects the area of the target geometry. More...
 
bool isAnyTestComponentInTargetInterior (const geom::Geometry *testGeom) const
 Tests whether any component of the test Geometry intersects the interior of the target geometry. More...
 
bool isAnyTargetComponentInAreaTest (const geom::Geometry *testGeom, const geom::Coordinate::ConstVect *targetRepPts) const
 

Additional Inherited Members

- Protected Attributes inherited from geos::geom::prep::AbstractPreparedPolygonContains
bool requireSomePointInInterior
 
- Protected Attributes inherited from geos::geom::prep::PreparedPolygonPredicate
const PreparedPolygon *const prepPoly
 

Detailed Description

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.

Author
Martin Davis

Definition at line 54 of file PreparedPolygonContains.h.

Constructor & Destructor Documentation

geos::geom::prep::PreparedPolygonContains::PreparedPolygonContains ( const PreparedPolygon *const  prepPoly)

Creates an instance of this operation.

Parameters
prepPolythe PreparedPolygon to evaluate

Member Function Documentation

bool geos::geom::prep::PreparedPolygonContains::contains ( const geom::Geometry geom)
inline

Tests whether this PreparedPolygon contains a given geometry.

Parameters
geomthe test geometry
Returns
true if the test geometry is contained

Definition at line 71 of file PreparedPolygonContains.h.

Referenced by contains().

Here is the caller graph for this function:

static bool geos::geom::prep::PreparedPolygonContains::contains ( const PreparedPolygon *const  prep,
const geom::Geometry geom 
)
inlinestatic

Computes the contains predicate between a PreparedPolygon and a Geometry.

Parameters
prepthe prepared polygon
geoma test geometry
Returns
true if the polygon contains the geometry

Definition at line 85 of file PreparedPolygonContains.h.

References contains().

Here is the call graph for this function:

bool geos::geom::prep::PreparedPolygonContains::fullTopologicalPredicate ( const geom::Geometry geom)
overrideprotectedvirtual

Computes the full topological contains predicate. Used when short-circuit tests are not conclusive.

Parameters
geomthe test geometry
Returns
true if this prepared polygon contains the test geometry

Implements geos::geom::prep::AbstractPreparedPolygonContains.


The documentation for this class was generated from the following file: