17 #include <geos/operation/overlayng/OverlayLabel.h>
18 #include <geos/geom/Coordinate.h>
19 #include <geos/export.h>
27 class CoordinateSequence;
67 int aDim = OverlayLabel::DIM_UNKNOWN;
70 int bDim = OverlayLabel::DIM_UNKNOWN;
73 std::unique_ptr<geom::CoordinateSequence> pts;
92 void initLabel(
OverlayLabel& lbl,
int geomIndex,
int dim,
int depthDelta,
bool isHole)
const;
94 int labelDim(
int dim,
int depthDelta)
const;
95 bool isHole(
int index)
const;
96 bool isBoundary(
int geomIndex)
const;
102 bool isShell(
int geomIndex)
const;
107 int delSign(
int depthDel)
const;
109 bool isHoleMerged(
int geomIndex,
const Edge* edge1,
const Edge* edge2)
const;
115 : aDim(OverlayLabel::DIM_UNKNOWN)
118 , bDim(OverlayLabel::DIM_UNKNOWN)
124 friend std::ostream& operator<<(std::ostream& os,
const Edge& e);
132 std::unique_ptr<geom::CoordinateSequence> getCoordinates();
140 std::size_t size()
const;
141 bool direction()
const;
148 int dimension(
int geomIndex)
const;
159 bool compareTo(
const Edge& e)
const
186 bool EdgeComparator(
const Edge* a,
const Edge* b);
The internal representation of a list of coordinates inside a Geometry.
Definition: CoordinateSequence.h:58
Coordinate is the lightweight class used to store coordinates.
Definition: Coordinate.h:60
int compareTo(const Coordinate &other) const
TODO: deprecate this, move logic to CoordinateLessThen instead.
Definition: EdgeSourceInfo.h:38
Definition: operation/overlayng/Edge.h:62
bool relativeDirection(const Edge *edge2) const
void merge(const Edge *edge)
Definition: OverlayLabel.h:90
Location
Constants representing the location of a point relative to a geometry.
Definition: Location.h:34
Basic namespace for all GEOS functionalities.
Definition: IndexedNestedRingTester.h:26