18 #include <geos/export.h>
21 #include <geos/geom/Coordinate.h>
61 geom::CoordinateXYZM m_orig;
71 void setSym(
HalfEdge* e) { m_sym = e; };
112 virtual const geom::CoordinateXYZM&
directionPt()
const {
return dest(); };
135 static HalfEdge*
create(
const geom::CoordinateXYZM& p0,
const geom::CoordinateXYZM& p1);
150 const geom::CoordinateXYZM&
orig()
const {
return m_orig; };
157 const geom::CoordinateXYZM&
dest()
const {
return m_sym->m_orig; }
164 double directionX()
const {
return directionPt().x - m_orig.x; }
171 double directionY()
const {
return directionPt().y - m_orig.y; }
238 bool equals(
const geom::CoordinateXY& p0,
const geom::CoordinateXY& p1)
const;
283 int compareTo(
const HalfEdge* e)
const {
return compareAngularDirection(e); };
305 friend std::ostream& operator<< (std::ostream& os,
const HalfEdge& el);
306 static void toStringNode(
const HalfEdge* he, std::ostream& os);
Definition: HalfEdge.h:56
HalfEdge * next() const
Definition: HalfEdge.h:188
bool equals(const geom::CoordinateXY &p0, const geom::CoordinateXY &p1) const
static HalfEdge * create(const geom::CoordinateXYZM &p0, const geom::CoordinateXYZM &p1)
const geom::CoordinateXYZM & dest() const
Definition: HalfEdge.h:157
double directionX() const
Definition: HalfEdge.h:164
HalfEdge(const geom::CoordinateXYZM &p_orig)
Definition: HalfEdge.h:122
int compareAngularDirection(const HalfEdge *e) const
HalfEdge * sym() const
Definition: HalfEdge.h:178
HalfEdge * find(const geom::CoordinateXY &dest)
void setNext(HalfEdge *e)
Definition: HalfEdge.h:218
void insert(HalfEdge *eAdd)
virtual const geom::CoordinateXYZM & directionPt() const
Definition: HalfEdge.h:112
void link(HalfEdge *p_sym)
double directionY() const
Definition: HalfEdge.h:171
const geom::CoordinateXYZM & orig() const
Definition: HalfEdge.h:150
HalfEdge * oNext() const
Definition: HalfEdge.h:211
bool isEdgesSorted() const
Basic namespace for all GEOS functionalities.
Definition: Angle.h:25