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);