26 #ifndef __TERRALIB_GEOMETRY_INTERNAL_VALIDATION_REMOVECOLLAPSEDSEGMENTS_H
27 #define __TERRALIB_GEOMETRY_INTERNAL_VALIDATION_REMOVECOLLAPSEDSEGMENTS_H
32 #include "../CommonDataStructures.h"
33 #include "../Config.h"
An abstract class to represent an algorithm that validates an geometry.
An abstract class to represent an algorithm that validates an geometry.
LineString is a curve with linear interpolation between points.
virtual te::gm::GeometryPtr validateLine(const te::gm::LineString *lineString, bool &wasChanged) const override
Validates a line, an returns additional variable to inform if the geometry has been changed or not.
VecCoords joinFragments(const VecFragments &vecFragments) const
RemoveCollapsedSegments()=default
bool removeCollapsedSegmentsAndGetFragments(const te::gm::LineString *lineString, VecFragments &fragments) const
virtual ~RemoveCollapsedSegments()=default
std::vector< VecCoords > VecFragments
std::map< te::gm::Coord2D, VecFragments > MapFragments
std::vector< te::gm::Coord2D > VecCoords
#define TEGEOMEXPORT
You can use this macro in order to export/import classes and functions from this module.