1 #ifndef VERTEXITERATOR_H
2 #define VERTEXITERATOR_H
11 class KERNELSHARED_EXPORT
VertexIterator :
public std::iterator<std::random_access_iterator_tag, geos::geom::Coordinate>
27 geos::geom::Coordinate& operator[](quint32 n);
34 const geos::geom::Coordinate& operator*()
const;
35 geos::geom::Coordinate& operator*();
36 geos::geom::Coordinate* operator->();
39 bool nextSubGeometry()
const;
43 void setFromGeometry(geos::geom::Geometry *geom);
45 std::vector<const geos::geom::CoordinateSequence *> _coordinates;
46 std::vector<const geos::geom::Coordinate *> _pointCoordinates;
47 bool _nextSubGeometry =
false;
51 qint32 _linearSize = 0;
52 qint32 _linearPosition = 0;
53 bool _pointMode =
false;
54 bool _polygonMode =
false;
57 void storeLineString(
const geos::geom::LineString *cline,
int index);
72 #endif // VERTEXITERATOR_H