GEOS: geos::geom::prep::PreparedPolygonContainsProperly Class Reference

GEOS 3.5.0

- Main Page
- Related Pages
- Namespaces
- Classes
- Files

- Class List
- Class Hierarchy
- Class Members

Public Member Functions | Static Public Member Functions | List of all members
geos::geom::prep::PreparedPolygonContainsProperly Class Reference

Computes the `containsProperly` spatial relationship predicate for PreparedPolygons relative to all other Geometry classes. More...

`#include <PreparedPolygonContainsProperly.h>`

Inheritance diagram for geos::geom::prep::PreparedPolygonContainsProperly:

## Public Member Functions
| PreparedPolygonContainsProperly (const PreparedPolygon *const prep)
bool | containsProperly (const geom::Geometry *geom)
Public Member Functions inherited from geos::geom::prep::PreparedPolygonPredicate
| PreparedPolygonPredicate (const PreparedPolygon *const prepPoly)

## Static Public Member Functions
static bool | containsProperly (const PreparedPolygon *const prep, const geom::Geometry *geom)

## Additional Inherited Members
Protected Member Functions inherited from geos::geom::prep::PreparedPolygonPredicate
bool | isAllTestComponentsInTarget (const geom::Geometry *testGeom) const
| Tests whether all components of the test Geometry are contained in the target 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
Protected Attributes inherited from geos::geom::prep::PreparedPolygonPredicate
const PreparedPolygon *const | prepPoly

## Detailed Description

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

## Constructor & Destructor Documentation

geos::geom::prep::PreparedPolygonContainsProperly::PreparedPolygonContainsProperly | ( | const PreparedPolygon *const | prep | ) |
| inline

Creates an instance of this operation.

Parameters

  prepPoly | the PreparedPolygon to evaluate

## Member Function Documentation

static bool geos::geom::prep::PreparedPolygonContainsProperly::containsProperly | ( | const PreparedPolygon *const | prep,
|  | const geom::Geometry * | geom
| ) |  |
| inlinestatic

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

References containsProperly().

Referenced by containsProperly().

bool geos::geom::prep::PreparedPolygonContainsProperly::containsProperly | ( | const geom::Geometry * | geom | ) |

Tests whether this PreparedPolygon containsProperly a given geometry.

Parameters

  geom | the test geometry

Returns
  true if the test geometry is contained properly

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

- PreparedPolygonContainsProperly.h