CombinatorialSpaces has incomplete, experimental support for several combinatorial structures used in topological graph theory, such as combinatorial maps and rotation systems. For an introduction to rotation systems and their implementation, see this blog post at the AlgebraicJulia blog.
Combinatorial maps and related structures, as C-sets.
In topological graph theory and graph drawing, an embedded graph is a combinatorial structure representing a graph embedded in an (oriented) surface, up to equivalence under (orientation-preserving) homeomorphism. This module defines data structures for rotation systems, combinatorial maps, and other combinatorial objects describing embedded graphs.
Add corolla to rotation graph, rotation system, or similar structure.
A corolla is a vertex together with its incident half-edges, the number of which is its valence. The rotation on the half-edges is the consecutive one induced by the half-edge part numbers.
Pair together half-edges into edges.
Trace edges of combinatorial map or similar, return a listing of cycles.
Usually the cycles will be pairs of half edges but in a hypermap the cycles can be arbitrary.
Trace faces of combinatorial map or similar, returning list of cycles.
Trace vertices of combinatorial map or similar, returning a list of cycles.
Edge permutation of combinatorial map or similar structure.
Vertex permutation of combinatorial map or similar structure.
Face permutation of combinatorial map or similar structure.