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

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

#include <PreparedPolygonCovers.h>

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

Public Member Functions

 PreparedPolygonCovers (const PreparedPolygon *const prep)
 Creates an instance of this operation. More...
 
bool covers (const Geometry *geom)
 Tests whether this PreparedPolygon covers a given geometry. More...
 
- 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 covers (const PreparedPolygon *const prep, const geom::Geometry *geom)
 Computes the covers predicate between a PreparedPolygon and a Geometry. More...
 

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 covers 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 55 of file PreparedPolygonCovers.h.

Constructor & Destructor Documentation

geos::geom::prep::PreparedPolygonCovers::PreparedPolygonCovers ( const PreparedPolygon *const  prep)
inline

Creates an instance of this operation.

Parameters
prepthe PreparedPolygon to evaluate

Definition at line 88 of file PreparedPolygonCovers.h.

Member Function Documentation

static bool geos::geom::prep::PreparedPolygonCovers::covers ( const PreparedPolygon *const  prep,
const geom::Geometry geom 
)
inlinestatic

Computes the covers predicate between a PreparedPolygon and a Geometry.

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

Definition at line 77 of file PreparedPolygonCovers.h.

References covers().

Referenced by covers().

Here is the call graph for this function:

Here is the caller graph for this function:

bool geos::geom::prep::PreparedPolygonCovers::covers ( const Geometry geom)
inline

Tests whether this PreparedPolygon covers a given geometry.

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

Definition at line 99 of file PreparedPolygonCovers.h.

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

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

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

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


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