22#ifndef GEOS_GEOMGRAPH_EDGEEND_H
23#define GEOS_GEOMGRAPH_EDGEEND_H
25#include <geos/export.h>
26#include <geos/geom/Coordinate.h>
27#include <geos/geomgraph/Label.h>
28#include <geos/inline.h>
35class BoundaryNodeRule;
60 friend std::ostream& operator<< (std::ostream&,
const EdgeEnd&);
76 const Label& newLabel);
106 virtual geom::Coordinate& getCoordinate() {
110 const geom::Coordinate&
111 getCoordinate()
const
116 virtual geom::Coordinate& getDirectedCoordinate();
118 virtual int getQuadrant();
120 virtual double getDx();
122 virtual double getDy();
124 virtual void setNode(Node* newNode);
126 virtual Node* getNode();
128 virtual int compareTo(
const EdgeEnd* e)
const;
150 virtual std::string print()
const;
177std::ostream& operator<< (std::ostream&,
const EdgeEnd&);
179struct GEOS_DLL EdgeEndLT {
183 return s1->compareTo(s2) < 0;
An interface for rules which determine whether node points which are in boundaries of lineal geometry...
Definition BoundaryNodeRule.h:51
Coordinate is the lightweight class used to store coordinates.
Definition Coordinate.h:60
Models the end of an edge incident on a node.
Definition EdgeEnd.h:56
EdgeEnd(Edge *newEdge, const geom::Coordinate &newP0, const geom::Coordinate &newP1, const Label &newLabel)
virtual int compareDirection(const EdgeEnd *e) const
EdgeEnd(Edge *newEdge, const geom::Coordinate &newP0, const geom::Coordinate &newP1)
Definition geomgraph/Edge.h:66
A Label indicates the topological relationship of a component of a topology graph to a given Geometry...
Definition Label.h:59
The node component of a geometry graph.
Definition geomgraph/Node.h:62
Basic namespace for all GEOS functionalities.
Definition IndexedNestedRingTester.h:26