public class DirectedEdge extends EdgeEnd
Modifier and Type | Field and Description |
---|---|
private int[] |
depth
The depth of each side (position) of this edge.
|
private EdgeRing |
edgeRing |
protected boolean |
isForward |
private boolean |
isInResult |
private boolean |
isVisited |
private EdgeRing |
minEdgeRing |
private DirectedEdge |
next |
private DirectedEdge |
nextMin |
private DirectedEdge |
sym |
Constructor and Description |
---|
DirectedEdge(Edge edge,
boolean isForward) |
Modifier and Type | Method and Description |
---|---|
private void |
computeDirectedLabel()
Compute the label in the appropriate orientation for this DirEdge
|
static int |
depthFactor(int currLocation,
int nextLocation)
Computes the factor for the change in depth when moving from one location to another.
|
int |
getDepth(int position) |
int |
getDepthDelta() |
Edge |
getEdge() |
EdgeRing |
getEdgeRing() |
EdgeRing |
getMinEdgeRing() |
DirectedEdge |
getNext() |
DirectedEdge |
getNextMin() |
DirectedEdge |
getSym()
Each Edge gives rise to a pair of symmetric DirectedEdges, in opposite
directions.
|
boolean |
isForward() |
boolean |
isInResult() |
boolean |
isInteriorAreaEdge()
This is an interior Area edge if
its label is an Area label for both Geometries
and for each Geometry both sides are in the interior.
|
boolean |
isLineEdge()
This edge is a line edge if
at least one of the labels is a line label
any labels which are not line labels have all Locations = EXTERIOR
|
boolean |
isVisited() |
void |
print(java.io.PrintStream out) |
void |
printEdge(java.io.PrintStream out) |
void |
setDepth(int position,
int depthVal) |
void |
setEdgeDepths(int position,
int depth)
Set both edge depths.
|
void |
setEdgeRing(EdgeRing edgeRing) |
void |
setInResult(boolean isInResult) |
void |
setMinEdgeRing(EdgeRing minEdgeRing) |
void |
setNext(DirectedEdge next) |
void |
setNextMin(DirectedEdge nextMin) |
void |
setSym(DirectedEdge de) |
void |
setVisited(boolean isVisited) |
void |
setVisitedEdge(boolean isVisited)
setVisitedEdge marks both DirectedEdges attached to a given Edge.
|
compareDirection, compareTo, computeLabel, getCoordinate, getDirectedCoordinate, getDx, getDy, getLabel, getNode, getQuadrant, init, setNode, toString
protected boolean isForward
private boolean isInResult
private boolean isVisited
private DirectedEdge sym
private DirectedEdge next
private DirectedEdge nextMin
private EdgeRing edgeRing
private EdgeRing minEdgeRing
private int[] depth
public DirectedEdge(Edge edge, boolean isForward)
public static int depthFactor(int currLocation, int nextLocation)
public void setInResult(boolean isInResult)
public boolean isInResult()
public boolean isVisited()
public void setVisited(boolean isVisited)
public void setEdgeRing(EdgeRing edgeRing)
public EdgeRing getEdgeRing()
public void setMinEdgeRing(EdgeRing minEdgeRing)
public EdgeRing getMinEdgeRing()
public int getDepth(int position)
public void setDepth(int position, int depthVal)
public int getDepthDelta()
public void setVisitedEdge(boolean isVisited)
public DirectedEdge getSym()
public boolean isForward()
public void setSym(DirectedEdge de)
public DirectedEdge getNext()
public void setNext(DirectedEdge next)
public DirectedEdge getNextMin()
public void setNextMin(DirectedEdge nextMin)
public boolean isLineEdge()
public boolean isInteriorAreaEdge()
private void computeDirectedLabel()
public void setEdgeDepths(int position, int depth)
public void printEdge(java.io.PrintStream out)