39 #ifndef __OPENFLUID_LANDR_POLYGONGRAPH_HPP__
40 #define __OPENFLUID_LANDR_POLYGONGRAPH_HPP__
51 namespace openfluid {
namespace landr {
99 virtual LandREntity* createNewEntity(
const geos::geom::Geometry* Geom,
100 unsigned int OfldId);
107 PolygonEdge* createEdge(geos::geom::LineString& LineString);
115 geos::geom::LineString* Segment);
122 void addEdgeAttribute(std::string AttributeName,
130 void removeEdgeAttribute(std::string AttributeName,
190 virtual void setAttributeFromMeanRasterValues(
const std::string& AttributeName);
197 void createVectorRepresentation(std::string FilePath,
198 std::string FileName);
211 double BufferDistance,
212 double ContactLength=0);
228 double BufferDistance,
229 double ContactLength=0);
237 void createEdgeAttribute(std::string AttributeName,
245 void removeEdgeAttribute(std::string AttributeName);
251 std::vector<std::string> getEdgeAttributeNames();
257 virtual void removeEntity(
int OfldId);
272 std::multimap<double, PolygonEntity*> getPolygonEntitiesByMinArea(
double MinArea,
bool Neighbour=
true);
282 std::multimap<double, PolygonEntity*> getPolygonEntitiesByCompactness(
double Compactness,
bool Neighbour=
true);
298 void mergePolygonEntitiesByMinArea(
double MinArea);
306 void mergePolygonEntitiesByCompactness(
double Compactness);
Definition: GeoVectorValue.hpp:52
Interface for a graph composed of LandREntity.
Definition: LandRGraph.hpp:78
A part of a PolygonEntity exterior ring, that may be share between to adjacent PolygonEntity.
Definition: PolygonEdge.hpp:69
Interface for managing Vector Data format.
Definition: VectorDataset.hpp:64
std::list< LandREntity * > Entities_t
Definition: LandRGraph.hpp:87
Interface for a landscape representation element.
Definition: LandREntity.hpp:63
A LandRGraph composed of LineStringEntities.
Definition: LineStringGraph.hpp:109
A LandRGraph composed of PolygonEntities.
Definition: PolygonGraph.hpp:58
Relationship
Definition: LandRTools.hpp:65
std::map< geos::geom::Polygon *, double > RastValByRastPoly_t
A a map of polygonized Raster geos::geom::Polygon and its area intersecting PolygonEntity.
Definition: PolygonGraph.hpp:65
A LandREntity representing a geos::geom::Polygon.
Definition: PolygonEntity.hpp:64
#define OPENFLUID_API
Definition: dllexport.hpp:87
GraphType
Definition: LandRGraph.hpp:82