GEOS 3.11.1
|
#include <DirectedEdge.h>
Public Member Functions | |
DirectedEdge (Edge *newEdge, bool newIsForward) | |
void | setInResult (bool v) |
bool | isInResult () const |
bool | isVisited () const |
void | setVisited (bool v) |
void | setEdgeRing (EdgeRing *er) |
EdgeRing * | getEdgeRing () const |
void | setMinEdgeRing (EdgeRing *mer) |
EdgeRing * | getMinEdgeRing () const |
int | getDepth (int position) const |
void | setDepth (int position, int newDepth) |
int | getDepthDelta () const |
void | setVisitedEdge (bool newIsVisited) |
DirectedEdge * | getSym () const |
Each Edge gives rise to a pair of symmetric DirectedEdges, in opposite directions. More... | |
bool | isForward () const |
void | setSym (DirectedEdge *de) |
DirectedEdge * | getNext () const |
void | setNext (DirectedEdge *newNext) |
DirectedEdge * | getNextMin () const |
void | setNextMin (DirectedEdge *nm) |
bool | isLineEdge () |
Tells wheter this edge is a Line. More... | |
bool | isInteriorAreaEdge () |
Tells wheter this edge is an Area. More... | |
void | setEdgeDepths (int position, int newDepth) |
Set both edge depths. More... | |
std::string | print () const override |
std::string | printEdge () |
Public Member Functions inherited from geos::geomgraph::EdgeEnd | |
EdgeEnd (Edge *newEdge, const geom::Coordinate &newP0, const geom::Coordinate &newP1, const Label &newLabel) | |
EdgeEnd (Edge *newEdge, const geom::Coordinate &newP0, const geom::Coordinate &newP1) | |
Edge * | getEdge () |
Label & | getLabel () |
const Label & | getLabel () const |
virtual geom::Coordinate & | getCoordinate () |
const geom::Coordinate & | getCoordinate () const |
virtual geom::Coordinate & | getDirectedCoordinate () |
virtual int | getQuadrant () |
virtual double | getDx () |
virtual double | getDy () |
virtual void | setNode (Node *newNode) |
virtual Node * | getNode () |
virtual int | compareTo (const EdgeEnd *e) const |
virtual int | compareDirection (const EdgeEnd *e) const |
virtual void | computeLabel (const algorithm::BoundaryNodeRule &bnr) |
virtual std::string | print () const |
Static Public Member Functions | |
static int | depthFactor (geom::Location currLocation, geom::Location nextLocation) |
Computes the factor for the change in depth when moving from one location to another. E.g. if crossing from the INTERIOR to the EXTERIOR the depth decreases, so the factor is -1. | |
Protected Attributes | |
bool | isForwardVar |
Protected Attributes inherited from geos::geomgraph::EdgeEnd | |
Edge * | edge |
Label | label |
Additional Inherited Members | |
Protected Member Functions inherited from geos::geomgraph::EdgeEnd | |
EdgeEnd (Edge *newEdge) | |
virtual void | init (const geom::Coordinate &newP0, const geom::Coordinate &newP1) |
A directed EdgeEnd.
|
inline |
Each Edge gives rise to a pair of symmetric DirectedEdges, in opposite directions.
bool geos::geomgraph::DirectedEdge::isInteriorAreaEdge | ( | ) |
Tells wheter this edge is an Area.
This is an interior Area edge if
bool geos::geomgraph::DirectedEdge::isLineEdge | ( | ) |
Tells wheter this edge is a Line.
This edge is a line edge if
|
overridevirtual |
Reimplemented from geos::geomgraph::EdgeEnd.
void geos::geomgraph::DirectedEdge::setEdgeDepths | ( | int | position, |
int | newDepth | ||
) |
Set both edge depths.
One depth for a given side is provided. The other is computed depending on the Location transition and the depthDelta of the edge.
void geos::geomgraph::DirectedEdge::setVisitedEdge | ( | bool | newIsVisited | ) |
Marks both DirectedEdges attached to a given Edge.
This is used for edges corresponding to lines, which will only appear oriented in a single direction in the result.