Package org.locationtech.jts.edgegraph
Class EdgeGraph
java.lang.Object
org.locationtech.jts.edgegraph.EdgeGraph
A graph comprised of
HalfEdge
s.
It supports tracking the vertices in the graph
via edges incident on them,
to allow efficient lookup of edges and vertices.
This class may be subclassed to use a
different subclass of HalfEdge,
by overriding createEdge(Coordinate)
.
If additional logic is required to initialize
edges then addEdge(Coordinate, Coordinate)
can be overridden as well.
- Author:
- Martin Davis
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionaddEdge
(Coordinate orig, Coordinate dest) Adds an edge between the coordinates orig and dest to this graph.protected HalfEdge
createEdge
(Coordinate orig) Creates a single HalfEdge.findEdge
(Coordinate orig, Coordinate dest) Finds an edge in this graph with the given origin and destination, if one exists.Gets allHalfEdge
s in the graph.static boolean
isValidEdge
(Coordinate orig, Coordinate dest) Tests if the given coordinates form a valid edge (with non-zero length).
-
Constructor Details
-
EdgeGraph
public EdgeGraph()
-
-
Method Details
-
createEdge
Creates a single HalfEdge. Override to use a different HalfEdge subclass.- Parameters:
orig
- the origin location- Returns:
- a new HalfEdge with the given origin
-
addEdge
Adds an edge between the coordinates orig and dest to this graph. Only valid edges can be added (in particular, zero-length segments cannot be added)- Parameters:
orig
- the edge origin locationdest
- the edge destination location.- Returns:
- the created edge
- See Also:
-
isValidEdge
Tests if the given coordinates form a valid edge (with non-zero length).- Parameters:
orig
- the start coordinatedest
- the end coordinate- Returns:
- true if the edge formed is valid
-
getVertexEdges
Gets allHalfEdge
s in the graph. Both edges of edge pairs are included.- Returns:
- a collection of the graph edges
-
findEdge
Finds an edge in this graph with the given origin and destination, if one exists.- Parameters:
orig
- the origin locationdest
- the destination location.- Returns:
- an edge with the given orig and dest, or null if none exists
-