Circular drawing methods


Functions

void abstractMixedGraph::Layout_Circular (TFloat spacing=0.0) throw (ERRejected)
void abstractMixedGraph::Layout_CircularByPredecessors (TFloat spacing=0.0) throw (ERRejected)
void abstractMixedGraph::Layout_CircularByColours (TFloat spacing=0.0) throw (ERRejected)
bool abstractMixedGraph::Layout_Outerplanar (TFloat spacing=0.0) throw (ERRejected)
void abstractMixedGraph::Layout_Equilateral (TFloat spacing=0.0) throw (ERRejected)

Function Documentation

void Layout_Circular TFloat  spacing = 0.0  )  throw (ERRejected) [inherited]
 

Draw all nodes on the boundary of a circle.

Parameters:
spacing The minimum node distance
This arranges the graph nodes on the boundary of a circle. The radius of this circle is such that the distance of two adjacent nodes becomes spacing or, if spacing==0, the nodeSpacing configuration parameter value.

With decreasing preference, the clockwise order of nodes is defined by one of the following properties:

  • An outerplanar representation
  • The predecessor labels
  • The node colours
  • The node indices

void Layout_CircularByColours TFloat  spacing = 0.0  )  throw (ERRejected) [inherited]
 

Circular drawing based on a node colouring.

Parameters:
spacing The minimum node distance or 0
This arranges the graph nodes on the boundary of a circle. The radius of this circle is such that the distance of two adjacent nodes becomes spacing or, if spacing==0, the nodeSpacing configuration parameter value.

The clockwise order of nodes is with increasing colour indices and, for equal colour indices, with increasing node indices.

void Layout_CircularByPredecessors TFloat  spacing = 0.0  )  throw (ERRejected) [inherited]
 

Circular drawing based on given predecessor arcs.

Parameters:
spacing The minimum node distance
This arranges the graph nodes on the boundary of a circle. The radius of this circle is such that the distance of two adjacent nodes becomes spacing or, if spacing==0, the nodeSpacing configuration parameter value.

The clockwise order of nodes is such that Hamiltonian cycles and 2-factors are exposed. If the predecessor labels do not encode a 2-factor, this procedure still puts the predecessor arcs on the exterior by using a greedy strategy.

void Layout_Equilateral TFloat  spacing = 0.0  )  throw (ERRejected) [inherited]
 

Multi-circular drawing of outerplanar graphs.

Parameters:
spacing The minimum node distance or 0
This arranges the nodes of any interior face on the boundary of a circle. The radius of this circle is such that the distance of two adjacent nodes becomes spacing or, if spacing==0, the nodeSpacing configuration parameter value.

An outerplanar representation must be set in advance. If so, the procedure displays precisely the given combinatorial embedding:

It is not verified that a plane drawing results. In fact, this is true only in very special cases. The procedure can be used to produce paper models of 3D polyhedra, after separating some faces according to a spanning tree.

bool Layout_Outerplanar TFloat  spacing = 0.0  )  throw (ERRejected) [inherited]
 

Circular drawing of outerplanar graphs.

Parameters:
spacing The minimum node distance or 0
This arranges the graph nodes on the boundary of a circle. The radius of this circle is such that the distance of two adjacent nodes becomes spacing or, if spacing==0, the nodeSpacing configuration parameter value.

An outerplanar representation must be set in advance. If so, the procedure displays precisely the given combinatorial embedding: