
A LandRGraph composed of LineStringEntities. More...
#include <landr/LineStringGraph.hpp>
 
  
 | Public Member Functions | |
| virtual | ~LineStringGraph () | 
| LandRGraph::GraphType | getType () | 
| Returns the type of graph. | |
| LineStringEntity * | getEntity (int OfldId) | 
| Returns a LineStringEntity with OFLD_ID, or 0 if it doesn't exist. | |
| virtual void | removeEntity (int OfldId) | 
| Removes from this LineStringGraph the LineStringEntity with OFLD_ID and its associated nodes. | |
| LineStringEntity * | getLastLineStringEntity () | 
| Returns the last LineStringEntity of this LineStringGraph, according to the LineStringEntity orientations, ie the one that has no down neighbour. | |
| std::vector< LineStringEntity * > | getEndLineStringEntities () | 
| Returns a vector of LineStringEntity that have no down neighbour, according to the LineStringEntity orientations. | |
| std::vector< LineStringEntity * > | getStartLineStringEntities () | 
| Returns a vector of LineStringEntity that have no up neighbour, according to the LineStringEntity orientations. | |
| float * | getRasterValueForEntityStartNode (LineStringEntity &Entity) | 
| Fetch the associated raster value corresponding to the LineStringEntity StartNode coordinate. | |
| float * | getRasterValueForEntityEndNode (LineStringEntity &Entity) | 
| Fetch the associated raster value corresponding to the LineStringEntity EndNode coordinate. | |
| void | setAttributeFromRasterValueAtStartNode (const std::string &AttributeName) | 
| Creates a new attribute for these LineStringGraph entities, and set for each LineStringEntity this attribute value as the associated raster values corresponding to the StartNode LineStringEntity coordinates. | |
| void | setAttributeFromRasterValueAtEndNode (const std::string &AttributeName) | 
| Creates a new attribute for these LineStringGraph entities, and set for each LineStringEntity this attribute value as the associated raster values corresponding to the EndNode LineStringEntity coordinates. | |
| void | reverseLineStringEntity (LineStringEntity &Entity) | 
| Reverse a LineStringEntity orientation. | |
| bool | isLineStringGraphArborescence () | 
| Returns true if this LineStringGraph is an arborescence, false otherwise. | |
| virtual void | setAttributeFromMeanRasterValues (const std::string &AttributeName) | 
| Creates a new attribute for this LineStringGraph entities, and set for each LineStringEntity this attribute value as the mean of the StartNode altitude and the EndNode altitude. | |
| virtual void | setAttributeFromVectorLocation (const std::string &AttributeName, openfluid::core::GeoVectorValue &Vector, const std::string &Column, double Thresh=0.0001) | 
| Creates a new attribute for this LineStringGraph entities, and set for each LineStringEntity this attribute value as the vector value corresponding to the Vector Entity Geometry. | |
| virtual void | setAttributeFromVectorLocation (const std::string &AttributeName, openfluid::landr::VectorDataset &Vector, const std::string &Column, double Thresh=0.0001) | 
| Creates a new attribute for this LineStringGraph entities, and set for each LineStringEntity. this attribute value as the vector value corresponding to the Vector Entity Geometry. | |
| void | mergeLineStringEntities (LineStringEntity &Entity, LineStringEntity &EntityToMerge) | 
| Merges a LineStringEntity into an other one. | |
| std::multimap< double, LineStringEntity * > | getLineStringEntitiesByMinLength (double MinLength, bool rmDangle=true) | 
| Gets a map of small LineStringEntity under length threshold and only if the LineStringEntity is not between two confluences. | |
| Static Public Member Functions | |
| static LineStringGraph * | create (openfluid::core::GeoVectorValue &Val) | 
| Creates a new LineStringGraph initialized from a core::GeoVectorValue. | |
| static LineStringGraph * | create (openfluid::landr::VectorDataset &Vect) | 
| Creates a new LineStringGraph initialized from a VectorDataset. | |
| static LineStringGraph * | create (const LandRGraph::Entities_t &Entities) | 
| Creates a new LineStringGraph initialized with a list of LandREntity. | |
| Protected Member Functions | |
| LineStringGraph () | |
| LineStringGraph (openfluid::core::GeoVectorValue &Val) | |
| Creates a new LineStringGraph initialized from a core::GeoVectorValue. | |
| LineStringGraph (openfluid::landr::VectorDataset &Vect) | |
| Creates a new LineStringGraph initialized from a VectorDataset. | |
| virtual void | addEntity (LandREntity *Entity) | 
| Adds a LandREntity into this LineStringGraph. | |
| virtual LandREntity * | getNewEntity (const geos::geom::Geometry *Geom, unsigned int OfldId) | 
| Creates a new LineStringEntity. | |
A LandRGraph composed of LineStringEntities.
| openfluid::landr::LineStringGraph::LineStringGraph | ( | ) |  [protected] | 
| openfluid::landr::LineStringGraph::LineStringGraph | ( | openfluid::core::GeoVectorValue & | Val | ) |  [protected] | 
Creates a new LineStringGraph initialized from a core::GeoVectorValue.
| openfluid::landr::LineStringGraph::LineStringGraph | ( | openfluid::landr::VectorDataset & | Vect | ) |  [protected] | 
Creates a new LineStringGraph initialized from a VectorDataset.
| virtual openfluid::landr::LineStringGraph::~LineStringGraph | ( | ) |  [virtual] | 
| virtual void openfluid::landr::LineStringGraph::addEntity | ( | LandREntity * | Entity | ) |  [protected, virtual] | 
Adds a LandREntity into this LineStringGraph.
Implements openfluid::landr::LandRGraph.
| static LineStringGraph* openfluid::landr::LineStringGraph::create | ( | openfluid::core::GeoVectorValue & | Val | ) |  [static] | 
Creates a new LineStringGraph initialized from a core::GeoVectorValue.
| Val | A core::GeoVectorValue which must be composed of one or many LineStrings, and each of them must contain a "OFLD_ID" attribute. | 
| static LineStringGraph* openfluid::landr::LineStringGraph::create | ( | openfluid::landr::VectorDataset & | Vect | ) |  [static] | 
Creates a new LineStringGraph initialized from a VectorDataset.
| Vect | A VectorDataset which must be composed of one or many LineStrings, and each of them must contain a "OFLD_ID" attribute. | 
| static LineStringGraph* openfluid::landr::LineStringGraph::create | ( | const LandRGraph::Entities_t & | Entities | ) |  [static] | 
Creates a new LineStringGraph initialized with a list of LandREntity.
| Entities | A list of LandREntity which must be LineStringEntity. | 
| std::vector<LineStringEntity*> openfluid::landr::LineStringGraph::getEndLineStringEntities | ( | ) | 
Returns a vector of LineStringEntity that have no down neighbour, according to the LineStringEntity orientations.
| LineStringEntity* openfluid::landr::LineStringGraph::getEntity | ( | int | OfldId | ) |  [virtual] | 
Returns a LineStringEntity with OFLD_ID, or 0 if it doesn't exist.
Reimplemented from openfluid::landr::LandRGraph.
Returns the last LineStringEntity of this LineStringGraph, according to the LineStringEntity orientations, ie the one that has no down neighbour.
| std::multimap<double, LineStringEntity*> openfluid::landr::LineStringGraph::getLineStringEntitiesByMinLength | ( | double | MinLength, | 
| bool | rmDangle = true | ||
| ) | 
Gets a map of small LineStringEntity under length threshold and only if the LineStringEntity is not between two confluences.
| MinLength | The length threshold (in map units). | 
| rmDangle | : if true, get also dangles under the threshold. | 
| virtual LandREntity* openfluid::landr::LineStringGraph::getNewEntity | ( | const geos::geom::Geometry * | Geom, | 
| unsigned int | OfldId | ||
| ) |  [protected, virtual] | 
Creates a new LineStringEntity.
| Geom | The geos::geom::Geometry of the new LineStringEntity to create. | 
| OfldId | The identifier of the new LineStringEntity. | 
Implements openfluid::landr::LandRGraph.
| float* openfluid::landr::LineStringGraph::getRasterValueForEntityEndNode | ( | LineStringEntity & | Entity | ) | 
Fetch the associated raster value corresponding to the LineStringEntity EndNode coordinate.
| Entity | The LineStringEntity to get the EndNode coordinate from. | 
| float* openfluid::landr::LineStringGraph::getRasterValueForEntityStartNode | ( | LineStringEntity & | Entity | ) | 
Fetch the associated raster value corresponding to the LineStringEntity StartNode coordinate.
| Entity | The LineStringEntity to get the StartNode coordinate from. | 
Returns a vector of LineStringEntity that have no up neighbour, according to the LineStringEntity orientations.
Returns the type of graph.
Implements openfluid::landr::LandRGraph.
Returns true if this LineStringGraph is an arborescence, false otherwise.
An arborescence is a graph with no loop; edges can be well directed or not.
| void openfluid::landr::LineStringGraph::mergeLineStringEntities | ( | LineStringEntity & | Entity, | 
| LineStringEntity & | EntityToMerge | ||
| ) | 
Merges a LineStringEntity into an other one.
The LineStringEntity to merge is deleted.
| Entity | An existent LineStringEntity. | 
| EntityToMerge | The LineStringEntity which will be merged into Entity and will be deleted. | 
| virtual void openfluid::landr::LineStringGraph::removeEntity | ( | int | OfldId | ) |  [virtual] | 
Removes from this LineStringGraph the LineStringEntity with OFLD_ID and its associated nodes.
| OfldId | The identifier. | 
Implements openfluid::landr::LandRGraph.
Reverse a LineStringEntity orientation.
| Entity | The LineStringEntity to reverse. | 
| virtual void openfluid::landr::LineStringGraph::setAttributeFromMeanRasterValues | ( | const std::string & | AttributeName | ) |  [virtual] | 
Creates a new attribute for this LineStringGraph entities, and set for each LineStringEntity this attribute value as the mean of the StartNode altitude and the EndNode altitude.
| AttributeName | The name of the attribute to create. | 
Implements openfluid::landr::LandRGraph.
| void openfluid::landr::LineStringGraph::setAttributeFromRasterValueAtEndNode | ( | const std::string & | AttributeName | ) | 
Creates a new attribute for these LineStringGraph entities, and set for each LineStringEntity this attribute value as the associated raster values corresponding to the EndNode LineStringEntity coordinates.
| AttributeName | The name of the attribute to create for the EndNode | 
| void openfluid::landr::LineStringGraph::setAttributeFromRasterValueAtStartNode | ( | const std::string & | AttributeName | ) | 
Creates a new attribute for these LineStringGraph entities, and set for each LineStringEntity this attribute value as the associated raster values corresponding to the StartNode LineStringEntity coordinates.
| AttributeName | The name of the attribute to create for the StartNode | 
| virtual void openfluid::landr::LineStringGraph::setAttributeFromVectorLocation | ( | const std::string & | AttributeName, | 
| openfluid::core::GeoVectorValue & | Vector, | ||
| const std::string & | Column, | ||
| double | Thresh = 0.0001 | ||
| ) |  [virtual] | 
Creates a new attribute for this LineStringGraph entities, and set for each LineStringEntity this attribute value as the vector value corresponding to the Vector Entity Geometry.
| AttributeName | The name of the attribute to create. | 
| Vector | The Name of the core::GeoVectorValue. | 
| Column | The column of the core::GeoVectorValue to upload. | 
| Thresh | The threshold of minimum distance between the core::GeoVectorValue geometry and the LineStringGraph geometry. | 
Implements openfluid::landr::LandRGraph.
| virtual void openfluid::landr::LineStringGraph::setAttributeFromVectorLocation | ( | const std::string & | AttributeName, | 
| openfluid::landr::VectorDataset & | Vector, | ||
| const std::string & | Column, | ||
| double | Thresh = 0.0001 | ||
| ) |  [virtual] | 
Creates a new attribute for this LineStringGraph entities, and set for each LineStringEntity. this attribute value as the vector value corresponding to the Vector Entity Geometry.
| AttributeName | The name of the attribute to create. | 
| Vector | The Name of the VectorDataset. | 
| Column | The column of the VectorDataset to upload. | 
| Thresh | The threshold of minimum distance between the VectorDataset geometry and the LineStringGraph geometry. | 
Implements openfluid::landr::LandRGraph.
 1.7.6.1
 1.7.6.1