- Main Page
- Namespaces
- Classes
- Files
- Related Pages

- Class List
- Class Hierarchy
- Class Members

# geos::operation::overlay::MaximalEdgeRing Class Reference

A ring of edges which may contain nodes of degree > 2. More...

`#include <MaximalEdgeRing.h>`

List of all members.

## Public Member Functions
| MaximalEdgeRing (geomgraph::DirectedEdge *start, const geom::GeometryFactory *geometryFactory)
geomgraph::DirectedEdge * | getNext (geomgraph::DirectedEdge *de)
void | setEdgeRing (geomgraph::DirectedEdge *de, geomgraph::EdgeRing *er)
std::vector< MinimalEdgeRing * > * | buildMinimalRings ()
| This function returns a newly allocated vector of pointers to newly allocated MinimalEdgeRing objects.
void | buildMinimalRings (std::vector< MinimalEdgeRing * > &minEdgeRings)
| This function pushes pointers to newly allocated MinimalEdgeRing objects to the provided vector.
void | linkDirectedEdgesForMinimalEdgeRings ()
| For all nodes in this EdgeRing, link the DirectedEdges at the node to form minimalEdgeRings.

## Detailed Description

A ring of edges which may contain nodes of degree > 2.

A MaximalEdgeRing may represent two different spatial entities:

- a single polygon possibly containing inversions (if the ring is oriented CW)
- a single hole possibly containing exversions (if the ring is oriented CCW)

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.

See also:
  com.vividsolutions.jts.operation.overlay.MinimalEdgeRing

The documentation for this class was generated from the following file:

- MaximalEdgeRing.h