public abstract class EdgeRing
extends java.lang.Object
Modifier and Type | Field and Description |
---|---|
private java.util.List |
edges |
protected GeometryFactory |
geometryFactory |
private java.util.ArrayList |
holes |
private boolean |
isHole |
private Label |
label |
private int |
maxNodeDegree |
private java.util.List |
pts |
private LinearRing |
ring |
private EdgeRing |
shell |
protected DirectedEdge |
startDe |
Constructor and Description |
---|
EdgeRing(DirectedEdge start,
GeometryFactory geometryFactory) |
Modifier and Type | Method and Description |
---|---|
void |
addHole(EdgeRing ring) |
protected void |
addPoints(Edge edge,
boolean isForward,
boolean isFirstEdge) |
private void |
computeMaxNodeDegree() |
protected void |
computePoints(DirectedEdge start)
Collect all the points from the DirectedEdges of this ring into a contiguous list
|
void |
computeRing()
Compute a LinearRing from the point list previously collected.
|
boolean |
containsPoint(Coordinate p)
This method will cause the ring to be computed.
|
Coordinate |
getCoordinate(int i) |
java.util.List |
getEdges()
Returns the list of DirectedEdges that make up this EdgeRing
|
Label |
getLabel() |
LinearRing |
getLinearRing() |
int |
getMaxNodeDegree() |
abstract DirectedEdge |
getNext(DirectedEdge de) |
EdgeRing |
getShell() |
boolean |
isHole() |
boolean |
isIsolated() |
boolean |
isShell() |
protected void |
mergeLabel(Label deLabel) |
protected void |
mergeLabel(Label deLabel,
int geomIndex)
Merge the RHS label from a DirectedEdge into the label for this EdgeRing.
|
abstract void |
setEdgeRing(DirectedEdge de,
EdgeRing er) |
void |
setInResult() |
void |
setShell(EdgeRing shell) |
Polygon |
toPolygon(GeometryFactory geometryFactory) |
protected DirectedEdge startDe
private int maxNodeDegree
private java.util.List edges
private java.util.List pts
private Label label
private LinearRing ring
private boolean isHole
private EdgeRing shell
private java.util.ArrayList holes
protected GeometryFactory geometryFactory
public EdgeRing(DirectedEdge start, GeometryFactory geometryFactory)
public boolean isIsolated()
public boolean isHole()
public Coordinate getCoordinate(int i)
public LinearRing getLinearRing()
public Label getLabel()
public boolean isShell()
public EdgeRing getShell()
public void setShell(EdgeRing shell)
public void addHole(EdgeRing ring)
public Polygon toPolygon(GeometryFactory geometryFactory)
public void computeRing()
public abstract DirectedEdge getNext(DirectedEdge de)
public abstract void setEdgeRing(DirectedEdge de, EdgeRing er)
public java.util.List getEdges()
protected void computePoints(DirectedEdge start)
public int getMaxNodeDegree()
private void computeMaxNodeDegree()
public void setInResult()
protected void mergeLabel(Label deLabel)
protected void mergeLabel(Label deLabel, int geomIndex)
protected void addPoints(Edge edge, boolean isForward, boolean isFirstEdge)
public boolean containsPoint(Coordinate p)