Public Member Functions | List of all members
openfluid::landr::LineStringEntity Class Reference

A LandREntity representing a geos::geom::LineString. More...

#include <landr/LineStringEntity.hpp>

Inheritance diagram for openfluid::landr::LineStringEntity:
Inheritance graph
[legend]
Collaboration diagram for openfluid::landr::LineStringEntity:
Collaboration graph
[legend]

Public Member Functions

 LineStringEntity (const geos::geom::Geometry *NewLine, unsigned int OfldId)
 Creates a new LineStringEntity. More...
 
virtual ~LineStringEntity ()
 
LineStringEntityclone ()
 Clones a LineStringEntity into a new LineStringEntity. More...
 
const geos::geom::LineString * line () const
 Returns the geos::geom::LineString of this LineStringEntity. More...
 
geos::planargraph::Node * startNode ()
 Returns the start geos::planargraph::Node of this LineStringEntity. More...
 
geos::planargraph::Node * endNode ()
 Returns the end geos::planargraph::Node of this LineStringEntity. More...
 
std::vector< LineStringEntity * > getLineOrientUpNeighbours ()
 Return a vector of up-neighbours LineStringEntity using the line orientation of this LineStringEntity. More...
 
std::vector< LineStringEntity * > getLineOrientDownNeighbours ()
 Return a vector of down-neighbours LineStringEntity using the line orientation of this LineStringEntity. More...
 
void computeNeighbours ()
 Compute the neighbours using line orientation of this LineStringEntity. More...
 
std::vector< LineStringEntity * > getLineNeighboursDegree2 ()
 Returns a vector of LineStringEntity down and upneighbours with NodeDegree=2. More...
 
- Public Member Functions inherited from openfluid::landr::LandREntity
 LandREntity (const geos::geom::Geometry *Geom, unsigned int OfldId)
 
virtual ~LandREntity ()
 
const geos::geom::Geometry * geometry ()
 Returns the geos::geom::Geometry of this LandREntity. More...
 
unsigned int getOfldId () const
 Returns the identifier of this LandREntity. More...
 
geos::geom::Point * centroid () const
 Returns the centroid of this LandREntity. More...
 
double getArea () const
 Returns the area of this LandREntity. More...
 
double getLength () const
 Returns the length of this LandREntity. More...
 
std::set< LandREntity * > * neighbours ()
 Returns a set of LandREntity neighbours of this LandREntity. More...
 
bool getAttributeValue (const std::string &AttributeName, core::Value &Value) const
 Gets the value of an attribute. More...
 
bool setAttributeValue (const std::string &AttributeName, const core::Value *Value)
 Sets the value of an attribute. More...
 
double getDistCentroCentro (LandREntity &Other)
 Gets the distance between this LandREntity centroid and Other LandREntity centroid. More...
 
LandREntityneighbour_MinDistCentroCentro ()
 Gets the LandREntity neighbour that has the minimum centroid-to-centroid distance. More...
 

Additional Inherited Members

- Protected Attributes inherited from openfluid::landr::LandREntity
const geos::geom::Geometry * mp_Geom
 The geos::geom::Geometry of this LandREntity. More...
 
unsigned int m_OfldId
 The identifier of this LandREntity. More...
 
geos::geom::Point * mp_Centroid
 The centroid of this LandREntity. More...
 
double m_Area
 The area of this LandREntity. More...
 
double m_Length
 The length of this LandREntity. More...
 
std::set< LandREntity * > * mp_Neighbours
 A set of LandREntity neighbours of this LandREntity. More...
 
std::map< std::string, core::Value * > m_Attributes
 A map of attributes of this LandREntity. More...
 

Detailed Description

A LandREntity representing a geos::geom::LineString.

A LineStringEntity has a StartNode and an EndNode, relatives to its LineString orientation.

Constructor & Destructor Documentation

openfluid::landr::LineStringEntity::LineStringEntity ( const geos::geom::Geometry *  NewLine,
unsigned int  OfldId 
)

Creates a new LineStringEntity.

Takes ownership of NewLine.

Exceptions
base::FrameworkExceptionif NewLine is not a geos::geom::LineString or is an empty geometry.
virtual openfluid::landr::LineStringEntity::~LineStringEntity ( )
virtual

Member Function Documentation

LineStringEntity* openfluid::landr::LineStringEntity::clone ( )
virtual
void openfluid::landr::LineStringEntity::computeNeighbours ( )
virtual

Compute the neighbours using line orientation of this LineStringEntity.

Implements openfluid::landr::LandREntity.

geos::planargraph::Node* openfluid::landr::LineStringEntity::endNode ( )

Returns the end geos::planargraph::Node of this LineStringEntity.

std::vector<LineStringEntity*> openfluid::landr::LineStringEntity::getLineNeighboursDegree2 ( )

Returns a vector of LineStringEntity down and upneighbours with NodeDegree=2.

Returns
A vector of LineStringEntity.
std::vector<LineStringEntity*> openfluid::landr::LineStringEntity::getLineOrientDownNeighbours ( )

Return a vector of down-neighbours LineStringEntity using the line orientation of this LineStringEntity.

std::vector<LineStringEntity*> openfluid::landr::LineStringEntity::getLineOrientUpNeighbours ( )

Return a vector of up-neighbours LineStringEntity using the line orientation of this LineStringEntity.

const geos::geom::LineString* openfluid::landr::LineStringEntity::line ( ) const

Returns the geos::geom::LineString of this LineStringEntity.

geos::planargraph::Node* openfluid::landr::LineStringEntity::startNode ( )

Returns the start geos::planargraph::Node of this LineStringEntity.


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