GEOS: geos::geom::prep::PreparedPolygonContains Class Reference

Public Member Functions | Static Public Member Functions | Protected Member Functions

# 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:

List of all members.

## Public Member Functions
| PreparedPolygonContains (const PreparedPolygon *const prepPoly)
bool | contains (const geom::Geometry *geom)
## Static Public Member Functions
static bool | contains (const PreparedPolygon *const prep, const geom::Geometry *geom)
## Protected Member Functions
bool | fullTopologicalPredicate (const geom::Geometry *geom)

## 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

## Constructor & Destructor Documentation

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

Creates an instance of this operation.

Parameters:

  prepPoly | the 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:

  geom | the test geometry

Returns:
  true if the test geometry is contained

References geos::geom::prep::AbstractPreparedPolygonContains::eval().

Referenced by contains().

static bool geos::geom::prep::PreparedPolygonContains::contains | ( | const PreparedPolygon *const | prep,
|  | const geom::Geometry * | geom
| ) |  | `[inline, static]`

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

References contains().

bool geos::geom::prep::PreparedPolygonContains::fullTopologicalPredicate | ( | const geom::Geometry * | geom ) | `[protected, virtual]`

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

Parameters:

  geom | the 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:

- PreparedPolygonContains.h