19#include <geos/export.h>
28class CoordinateSequence;
42 LinkedLine(
const CoordinateSequence& pts);
45 bool isCorner(std::size_t i)
const;
47 std::size_t size()
const;
48 std::size_t next(std::size_t i)
const;
49 std::size_t prev(std::size_t i)
const;
51 const Coordinate& getCoordinate(std::size_t index)
const;
52 const Coordinate& prevCoordinate(std::size_t index)
const;
53 const Coordinate& nextCoordinate(std::size_t index)
const;
55 bool hasCoordinate(std::size_t index)
const;
57 void remove(std::size_t index);
59 std::unique_ptr<CoordinateSequence> getCoordinates()
const;
65 const CoordinateSequence& m_coord;
68 std::vector<std::size_t> m_next;
69 std::vector<std::size_t> m_prev;
71 void createNextLinks(std::size_t size);
73 void createPrevLinks(std::size_t size);
78GEOS_DLL std::ostream& operator<< (std::ostream& os,
const LinkedLine& ll);
The internal representation of a list of coordinates inside a Geometry.
Definition CoordinateSequence.h:56
Coordinate is the lightweight class used to store coordinates.
Definition Coordinate.h:217
Basic namespace for all GEOS functionalities.
Definition geos.h:39