# Class: PlanarGraph

## jsts.geomgraph.PlanarGraph

#### new PlanarGraph()

The computation of the `IntersectionMatrix` relies on the use of a structure called a "topology graph". The topology graph contains nodes and edges corresponding to the nodes and line segments of a `Geometry`. Each node and edge in the graph is labeled with its topological location relative to the source geometry.

Note that there is no requirement that points of self-intersection be a vertex. Thus to obtain a correct topology graph, `Geometry`s must be self-noded before constructing their graphs.

Two fundamental operations are supported by topology graphs:

• Computing the intersections between all the edges and nodes of a single graph
• Computing the intersections between the edges and nodes of two different graphs
Source:

### Members

#### (protected) edgeEndList :javascript.util.ArrayList

##### Type:
• javascript.util.ArrayList
Source:

#### (protected) edges :javascript.util.ArrayList

##### Type:
• javascript.util.ArrayList
Source:

Source:

### Methods

For nodes in the Collection, link the DirectedEdges at the node that are in the result. This allows clients to link only a subset of nodes in the graph, for efficiency (because they know that only a subset is of interest).
Source:

Add a set of edges to the graph. For each edge two DirectedEdges will be created. DirectedEdges are NOT linked by this method.
##### Parameters:
Name Type Description
`edgedToAdd` javascript.util.List
Source:

#### findEdgeEnd()

Returns the EdgeEnd which has edge e as its base edge (MD 18 Feb 2002 - this should return a pair of edges)
Source:
##### Returns:
the edge, if found `null` if the edge was not found.

#### findEdgeInSameDirection()

Returns the edge which starts at p0 and whose first segment is parallel to p1
Source:
##### Returns:
the edge, if found `null` if the edge was not found.

#### getNodeIterator() → {javascript.util.Iterator}

Source:
##### Returns:
Type
javascript.util.Iterator

#### getNodes() → {javascript.util.Collection}

Source:
##### Returns:
Type
javascript.util.Collection

#### matchInSameDirection()

The coordinate pairs match if they define line segments lying in the same direction. E.g. the segments are parallel and in the same quadrant (as opposed to parallel and opposite!).
Source: