20#include <geos/geom/Geometry.h>
21#include <geos/export.h>
34class GeometryCollection;
87 , isKeepCollapsed(
false)
90 static std::unique_ptr<geom::Geometry> fix(
const geom::Geometry* geom);
111 std::unique_ptr<geom::Point> fixPoint(
const geom::Point* geom)
const;
112 std::unique_ptr<geom::Point> fixPointElement(
const geom::Point* geom)
const;
114 std::unique_ptr<geom::Geometry> fixMultiPoint(
const geom::MultiPoint* geom)
const;
115 std::unique_ptr<geom::Geometry> fixLinearRing(
const geom::LinearRing* geom)
const;
116 std::unique_ptr<geom::Geometry> fixLinearRingElement(
const geom::LinearRing* geom)
const;
117 std::unique_ptr<geom::Geometry> fixLineString(
const geom::LineString* geom)
const;
118 std::unique_ptr<geom::Geometry> fixLineStringElement(
const geom::LineString* geom)
const;
126 std::unique_ptr<geom::Geometry> fixMultiLineString(
const MultiLineString* geom)
const;
127 std::unique_ptr<geom::Geometry> fixPolygon(
const geom::Polygon* geom)
const;
128 std::unique_ptr<geom::Geometry> fixPolygonElement(
const geom::Polygon* geom)
const;
129 std::vector<std::unique_ptr<Geometry>> fixHoles(
const geom::Polygon* geom)
const;
131 std::unique_ptr<geom::Geometry> fixRing(
const geom::LinearRing* ring)
const;
132 std::unique_ptr<geom::Geometry> fixMultiPolygon(
const geom::MultiPolygon* geom)
const;
137 std::vector<std::unique_ptr<Geometry>>& holesFixed,
138 std::vector<const Geometry*>& holes,
139 std::vector<const Geometry*>& shells)
const;
148 std::unique_ptr<Geometry> difference(
150 std::vector<const Geometry*>& holes)
const;
160 std::unique_ptr<Geometry> unionGeometry(
161 std::vector<const Geometry*>& polys)
const;
Represents a collection of heterogeneous Geometry objects.
Definition: GeometryCollection.h:52
Supplies a set of utility methods for building Geometry objects from CoordinateSequence or other Geom...
Definition: GeometryFactory.h:66
Basic implementation of Geometry, constructed and destructed by GeometryFactory.
Definition: Geometry.h:186
const GeometryFactory * getFactory() const
Gets the factory which contains the context in which this geometry was created.
Definition: Geometry.h:216
Definition: LineString.h:66
Models an OGC SFS LinearRing. A LinearRing is a LineString which is both closed and simple.
Definition: LinearRing.h:55
Models a collection of LineStrings.
Definition: MultiLineString.h:50
Definition: MultiPoint.h:51
Definition: MultiPolygon.h:59
Represents a linear polygon, which may include holes.
Definition: Polygon.h:61
Definition: GeometryFixer.h:74
std::unique_ptr< geom::Geometry > getResult() const
void setKeepCollapsed(bool p_isKeepCollapsed)
Basic namespace for all GEOS functionalities.
Definition: geos.h:39