package edgegraph
- Alphabetic
- Public
- Protected
Value Members
- object HalfEdge
Represents a directed component of an edge in an {link EdgeGraph}.
Represents a directed component of an edge in an {link EdgeGraph}. HalfEdges link vertices whose locations are defined by {link Coordinate}s. HalfEdges start at an origin vertex, and terminate at a destination vertex. HalfEdges always occur in symmetric pairs, with the {link #sym()} method giving access to the oppositely-oriented component. HalfEdges and the methods on them form an edge algebra, which can be used to traverse and query the topology of the graph formed by the edges.
To support graphs where the edges are sequences of coordinates each edge may also have a direction point supplied. This is used to determine the ordering of the edges around the origin. HalfEdges with the same origin are ordered so that the ring of edges formed by them is oriented CCW.
By design HalfEdges carry minimal information about the actual usage of the graph they represent. They can be subclassed to carry more information if required.
HalfEdges form a complete and consistent data structure by themselves, but an {link EdgeGraph} is useful to allow retrieving edges by vertex and edge location, as well as ensuring edges are created and linked appropriately.