23 #include <geos/export.h>
24 #include <geos/geom/Geometry.h>
25 #include <geos/geom/CoordinateSequence.h>
26 #include <geos/geom/Envelope.h>
27 #include <geos/geom/Dimension.h>
28 #include <geos/geom/SimpleCurve.h>
37 #pragma warning(disable: 4251)
43 class CoordinateSequenceFilter;
84 std::unique_ptr<LineString>
clone()
const
86 return std::unique_ptr<LineString>(cloneImpl());
95 bool isCurved()
const override {
105 std::unique_ptr<LineString>
reverse()
const {
return std::unique_ptr<LineString>(reverseImpl()); }
122 getSortIndex()
const override
124 return SORTINDEX_LINESTRING;
129 envelope = computeEnvelopeInternal(
true);
134 void validateConstruction();
137 struct GEOS_DLL LineStringLT {
139 operator()(
const LineString* ls1,
const LineString* ls2)
const
141 return ls1->compareTo(ls2) < 0;
Supplies a set of utility methods for building Geometry objects from CoordinateSequence or other Geom...
Definition: GeometryFactory.h:70
Definition: LineString.h:66
LineString * reverseImpl() const override
Make a geometry with coordinates in reverse order.
LineString * cloneImpl() const override
Make a deep-copy of this Geometry.
Definition: LineString.h:117
GeometryTypeId getGeometryTypeId() const override
Return an integer representation of this Geometry type.
std::vector< const LineString * > ConstVect
A vector of const LineString pointers.
Definition: LineString.h:73
LineString(CoordinateSequence::Ptr &&pts, const GeometryFactory &newFactory)
Constructs a LineString taking ownership the given CoordinateSequence.
double getLength() const override
Returns the length of this Geometry.
std::string getGeometryType() const override
Return a string representation of this Geometry type.
std::unique_ptr< LineString > clone() const
Creates and returns a full copy of this LineString object (including all coordinates contained by it)
Definition: LineString.h:84
std::unique_ptr< LineString > reverse() const
Definition: LineString.h:105
void geometryChangedAction() override
Notifies this Geometry that its Coordinates have been changed by an external party.
Definition: LineString.h:127
GeometryTypeId
Geometry types.
Definition: Geometry.h:74
Basic namespace for all GEOS functionalities.
Definition: Angle.h:25