Main Page | Namespace List | Class Hierarchy | Class List | File List | Namespace Members | Class Members | Related Pages

geos::operation::sharedpaths::SharedPathsOp Class Reference

Find shared paths among two linear Geometry objects. More...

#include <SharedPathsOp.h>

List of all members.

Public Types

typedef std::vector< geom::LineString * > PathList
 LineString vector (list of edges).

Public Member Functions

 SharedPathsOp (const geom::Geometry &g1, const geom::Geometry &g2)
 Constructor.
void getSharedPaths (PathList &sameDirection, PathList &oppositeDirection)
 Get shared paths.

Static Public Member Functions

void sharedPathsOp (const geom::Geometry &g1, const geom::Geometry &g2, PathList &sameDirection, PathList &oppositeDirection)
 Find paths shared between two linear geometries.
void clearEdges (PathList &from)
 Delete all edges in the list.


Detailed Description

Find shared paths among two linear Geometry objects.

For each shared path report if it direction is the same or opposite.

Paths reported as shared are given in the direction they appear in the first geometry.

Developed by Sandro Santilli (strk@keybit.net) for Faunalia (http://www.faunalia.it) with funding from Regione Toscana - Settore SISTEMA INFORMATIVO TERRITORIALE ED AMBIENTALE - for the project: "Sviluppo strumenti software per il trattamento di dati geografici basati su QuantumGIS e Postgis (CIG 0494241492)"


Constructor & Destructor Documentation

geos::operation::sharedpaths::SharedPathsOp::SharedPathsOp const geom::Geometry g1,
const geom::Geometry g2
 

Constructor.

Parameters:
g1 First geometry. Must be linear.
g2 Second geometry. Must be linear.


Member Function Documentation

void geos::operation::sharedpaths::SharedPathsOp::getSharedPaths PathList sameDirection,
PathList oppositeDirection
 

Get shared paths.

Parameters:
sameDir Shared edges having the same direction are pushed onto this vector. They'll be of type geom::LineString. Ownership of the edges is tranferred.
oppositeDir Shared edges having the opposite direction are pushed onto this vector. They'll be of type geom::LineString. Ownership of the edges is tranferred.

void geos::operation::sharedpaths::SharedPathsOp::sharedPathsOp const geom::Geometry g1,
const geom::Geometry g2,
PathList sameDirection,
PathList oppositeDirection
[static]
 

Find paths shared between two linear geometries.

Parameters:
g1 First geometry. Must be linear.
g2 Second geometry. Must be linear.
sameDir Shared edges having the same direction are pushed onto this vector. They'll be of type LineString. Ownership of the edges is tranferred.
oppositeDir Shared edges having the opposite direction are pushed onto this vector. They'll be of type geom::LineString. Ownership of the edges is tranferred.


The documentation for this class was generated from the following file:
Generated on Tue Jun 5 11:39:13 2012 for GEOS by  doxygen 1.3.9.1