com.vividsolutions.jts.operation.overlay
Class MaximalEdgeRing

java.lang.Object
  extended bycom.vividsolutions.jts.geomgraph.EdgeRing
      extended bycom.vividsolutions.jts.operation.overlay.MaximalEdgeRing

public class MaximalEdgeRing
extends EdgeRing

A ring of DirectedEdges which may contain nodes of degree > 2. A MaximalEdgeRing may represent two different spatial entities:

If the MaximalEdgeRing represents a polygon, the interior of the polygon is strongly connected.

These are the form of rings used to define polygons under some spatial data models. However, under the OGC SFS model, MinimalEdgeRings are required. A MaximalEdgeRing can be converted to a list of MinimalEdgeRings using the buildMinimalRings() method.

Version:
1.7
See Also:
MinimalEdgeRing

Field Summary
 
Fields inherited from class com.vividsolutions.jts.geomgraph.EdgeRing
cga, geometryFactory, startDe
 
Constructor Summary
MaximalEdgeRing(DirectedEdge start, GeometryFactory geometryFactory, CGAlgorithms cga)
           
 
Method Summary
 java.util.List buildMinimalRings()
           
 DirectedEdge getNext(DirectedEdge de)
           
 void linkDirectedEdgesForMinimalEdgeRings()
          For all nodes in this EdgeRing, link the DirectedEdges at the node to form minimalEdgeRings
 void setEdgeRing(DirectedEdge de, EdgeRing er)
           
 
Methods inherited from class com.vividsolutions.jts.geomgraph.EdgeRing
addHole, addPoints, computePoints, computeRing, containsPoint, getCoordinate, getEdges, getLabel, getLinearRing, getMaxNodeDegree, getShell, isHole, isIsolated, isShell, mergeLabel, mergeLabel, setInResult, setShell, toPolygon
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

MaximalEdgeRing

public MaximalEdgeRing(DirectedEdge start,
                       GeometryFactory geometryFactory,
                       CGAlgorithms cga)
Method Detail

getNext

public DirectedEdge getNext(DirectedEdge de)
Specified by:
getNext in class EdgeRing

setEdgeRing

public void setEdgeRing(DirectedEdge de,
                        EdgeRing er)
Specified by:
setEdgeRing in class EdgeRing

linkDirectedEdgesForMinimalEdgeRings

public void linkDirectedEdgesForMinimalEdgeRings()
For all nodes in this EdgeRing, link the DirectedEdges at the node to form minimalEdgeRings


buildMinimalRings

public java.util.List buildMinimalRings()