Public Member Functions | Static Public Member Functions

geos::operation::relate::RelateOp Class Reference

Implements the SFS relate() operation on two geom::Geometry objects. More...

#include <RelateOp.h>

Inheritance diagram for geos::operation::relate::RelateOp:
geos::operation::GeometryGraphOperation

List of all members.

Public Member Functions

 RelateOp (const geom::Geometry *g0, const geom::Geometry *g1)
 Creates a new Relate operation, using the default (OGC SFS) Boundary Node Rule.
 RelateOp (const geom::Geometry *g0, const geom::Geometry *g1, const algorithm::BoundaryNodeRule &boundaryNodeRule)
 Creates a new Relate operation with a specified Boundary Node Rule.
geom::IntersectionMatrixgetIntersectionMatrix ()
 Gets the IntersectionMatrix for the spatial relationship between the input geometries.

Static Public Member Functions

static geom::IntersectionMatrixrelate (const geom::Geometry *a, const geom::Geometry *b)
 Computes the geom::IntersectionMatrix for the spatial relationship between two geom::Geometry objects, using the default (OGC SFS) Boundary Node Rule.
static geom::IntersectionMatrixrelate (const geom::Geometry *a, const geom::Geometry *b, const algorithm::BoundaryNodeRule &boundaryNodeRule)
 Computes the geom::IntersectionMatrix for the spatial relationship between two geom::Geometry objects, using a specified Boundary Node Rule.

Detailed Description

Implements the SFS relate() operation on two geom::Geometry objects.

This class supports specifying a custom algorithm::BoundaryNodeRule to be used during the relate computation.

Note: custom Boundary Node Rules do not (currently) affect the results of other Geometry methods (such as Geometry::getBoundary. The results of these methods may not be consistent with the relationship computed by a custom Boundary Node Rule.


Constructor & Destructor Documentation

geos::operation::relate::RelateOp::RelateOp ( const geom::Geometry g0,
const geom::Geometry g1 
)

Creates a new Relate operation, using the default (OGC SFS) Boundary Node Rule.

Parameters:
g0 a Geometry to relate. Ownership left to caller.
g1 another Geometry to relate. Ownership to caller.
geos::operation::relate::RelateOp::RelateOp ( const geom::Geometry g0,
const geom::Geometry g1,
const algorithm::BoundaryNodeRule boundaryNodeRule 
)

Creates a new Relate operation with a specified Boundary Node Rule.

Parameters:
g0 a Geometry to relate. Ownership left to caller.
g1 another Geometry to relate. Ownership to caller.
boundaryNodeRule the Boundary Node Rule to use

Member Function Documentation

geom::IntersectionMatrix* geos::operation::relate::RelateOp::getIntersectionMatrix (  ) 

Gets the IntersectionMatrix for the spatial relationship between the input geometries.

Returns:
the geom::IntersectionMatrix for the spatial relationship between the input geometries. Ownership transferred.
static geom::IntersectionMatrix* geos::operation::relate::RelateOp::relate ( const geom::Geometry a,
const geom::Geometry b 
) [static]

Computes the geom::IntersectionMatrix for the spatial relationship between two geom::Geometry objects, using the default (OGC SFS) Boundary Node Rule.

Parameters:
a a Geometry to test. Ownership left to caller.
b a Geometry to test. Ownership left to caller.
Returns:
the IntersectonMatrix for the spatial relationship between the geometries. Ownership transferred.
static geom::IntersectionMatrix* geos::operation::relate::RelateOp::relate ( const geom::Geometry a,
const geom::Geometry b,
const algorithm::BoundaryNodeRule boundaryNodeRule 
) [static]

Computes the geom::IntersectionMatrix for the spatial relationship between two geom::Geometry objects, using a specified Boundary Node Rule.

Parameters:
a a Geometry to test. Ownership left to caller.
b a Geometry to test. Ownership left to caller.
boundaryNodeRule the Boundary Node Rule to use.
Returns:
the IntersectonMatrix for the spatial relationship between the geometries. Ownership transferred.

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