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);
HalfEdge * find(const geom::CoordinateXY &dest)
HalfEdge * oNext() const
Definition HalfEdge.h:211
virtual const geom::CoordinateXYZM & directionPt() const
Definition HalfEdge.h:112
const geom::CoordinateXYZM & orig() const
Definition HalfEdge.h:150
bool equals(const geom::CoordinateXY &p0, const geom::CoordinateXY &p1) const
double directionX() const
Definition HalfEdge.h:164
HalfEdge(const geom::CoordinateXYZM &p_orig)
Definition HalfEdge.h:122
int compareAngularDirection(const HalfEdge *e) const
static HalfEdge * create(const geom::CoordinateXYZM &p0, const geom::CoordinateXYZM &p1)
HalfEdge * sym() const
Definition HalfEdge.h:178
void setNext(HalfEdge *e)
Definition HalfEdge.h:218
void insert(HalfEdge *eAdd)
HalfEdge * next() const
Definition HalfEdge.h:188
void link(HalfEdge *p_sym)
double directionY() const
Definition HalfEdge.h:171
bool isEdgesSorted() const
const geom::CoordinateXYZM & dest() const
Definition HalfEdge.h:157
Basic namespace for all GEOS functionalities.
Definition geos.h:39