22 #include <geos/export.h>
25 #include <geos/geom/LineString.h>
62 static const unsigned int MINIMUM_VALID_SIZE = 3;
81 std::unique_ptr<LinearRing> clone()
const
83 return std::unique_ptr<LinearRing>(cloneImpl());
96 bool isClosed()
const override;
104 std::unique_ptr<LinearRing> reverse()
const {
return std::unique_ptr<LinearRing>(reverseImpl()); }
106 void orient(
bool isCW);
111 getSortIndex()
const override
113 return SORTINDEX_LINEARRING;
122 void validateConstruction();
The internal representation of a list of coordinates inside a Geometry.
Definition: CoordinateSequence.h:56
Supplies a set of utility methods for building Geometry objects from CoordinateSequence or other Geom...
Definition: GeometryFactory.h:70
Definition: LineString.h:66
Models an OGC SFS LinearRing. A LinearRing is a LineString which is both closed and simple.
Definition: LinearRing.h:54
int getBoundaryDimension() const override
Returns Dimension.FALSE, since by definition LinearRings do not have a boundary.
LinearRing * reverseImpl() const override
Make a geometry with coordinates in reverse order.
LinearRing(CoordinateSequence::Ptr &&points, const GeometryFactory &newFactory)
Constructs a LinearRing with the given points.
std::string getGeometryType() const override
Return a string representation of this Geometry type.
LinearRing * cloneImpl() const override
Make a deep-copy of this Geometry.
Definition: LinearRing.h:116
GeometryTypeId getGeometryTypeId() const override
Return an integer representation of this Geometry type.
GeometryTypeId
Geometry types.
Definition: Geometry.h:74
Basic namespace for all GEOS functionalities.
Definition: Angle.h:25