Open
Graph Drawing
Framework

 v.2010.10
 

Public Member Functions | Private Member Functions | Private Attributes

ogdf::CircularLayout Class Reference

The circular layout algorithm. More...

#include <ogdf/misclayout/CircularLayout.h>

Inheritance diagram for ogdf::CircularLayout:
ogdf::LayoutModule

List of all members.

Public Member Functions

 CircularLayout ()
 Creates an instance of circular layout.
 ~CircularLayout ()
The algorithm call

void call (GraphAttributes &GA)
 Computes a circular layout for graph attributes GA.
Optional parameters

double minDistCircle () const
 Returns the option minDistCircle.
void minDistCircle (double x)
 Sets the option minDistCircle to x.
double minDistLevel () const
 Returns the option minDistLevel.
void minDistLevel (double x)
 Sets the option minDistLevel to x.
double minDistSibling () const
 Returns the option minDistSibling.
void minDistSibling (double x)
 Sets the option minDistSibling to x.
double minDistCC () const
 Returns the option minDistCC.
void minDistCC (double x)
 Sets the option minDistCC to x.
double pageRatio () const
 Returns the option pageRatio.
void pageRatio (double x)
 Sets the option pageRatio to x.

Private Member Functions

void doCall (GraphCopyAttributes &AG, ClusterStructure &C)
void assignClustersByBiconnectedComponents (ClusterStructure &C)
int sizeBC (node vB)
void computePreferedAngles (ClusterStructure &C, const Array< double > &outerRadius, Array< double > &preferedAngle)
void assignPrefAngle (ClusterStructure &C, const Array< double > &outerRadius, Array< double > &preferedAngle, int c, int l, double r1)

Private Attributes

double m_minDistCircle
 The minimal distance between nodes on a circle.
double m_minDistLevel
 The minimal distance between father and child circle.
double m_minDistSibling
 The minimal distance between circles on same level.
double m_minDistCC
 The minimal distance between connected components.
double m_pageRatio
 The page ratio used for packing connected components.

Detailed Description

The circular layout algorithm.

The implementation used in CircularLayout is based on the following publication:

Ugur Dogrusöz, Brendan Madden, Patrick Madden: Circular Layout in the Graph Layout Toolkit. Proc. Graph Drawing 1996, LNCS 1190, pp. 92-100, 1997.

Optional parameters

Circular layout provides the following optional parameters.

OptionTypeDefaultDescription
minDistCircledouble20.0 The minimal distance between nodes on a circle.
minDistLeveldouble20.0 The minimal distance between father and child circle.
minDistSiblingdouble10.0 The minimal distance between circles on same level.
minDistCCdouble20.0 The minimal distance between connected components.
pageRatiodouble1.0 The page ratio used for packing connected components.

Definition at line 101 of file CircularLayout.h.


Constructor & Destructor Documentation

ogdf::CircularLayout::CircularLayout (  ) 

Creates an instance of circular layout.

ogdf::CircularLayout::~CircularLayout (  )  [inline]

Definition at line 108 of file CircularLayout.h.


Member Function Documentation

void ogdf::CircularLayout::assignClustersByBiconnectedComponents ( ClusterStructure &  C  )  [private]
void ogdf::CircularLayout::assignPrefAngle ( ClusterStructure &  C,
const Array< double > &  outerRadius,
Array< double > &  preferedAngle,
int  c,
int  l,
double  r1 
) [private]
void ogdf::CircularLayout::call ( GraphAttributes GA  )  [virtual]

Computes a circular layout for graph attributes GA.

Implements ogdf::LayoutModule.

void ogdf::CircularLayout::computePreferedAngles ( ClusterStructure &  C,
const Array< double > &  outerRadius,
Array< double > &  preferedAngle 
) [private]
void ogdf::CircularLayout::doCall ( GraphCopyAttributes AG,
ClusterStructure &  C 
) [private]
double ogdf::CircularLayout::minDistCC (  )  const [inline]

Returns the option minDistCC.

Definition at line 144 of file CircularLayout.h.

void ogdf::CircularLayout::minDistCC ( double  x  )  [inline]

Sets the option minDistCC to x.

Definition at line 147 of file CircularLayout.h.

double ogdf::CircularLayout::minDistCircle (  )  const [inline]

Returns the option minDistCircle.

Definition at line 126 of file CircularLayout.h.

void ogdf::CircularLayout::minDistCircle ( double  x  )  [inline]

Sets the option minDistCircle to x.

Definition at line 129 of file CircularLayout.h.

double ogdf::CircularLayout::minDistLevel (  )  const [inline]

Returns the option minDistLevel.

Definition at line 132 of file CircularLayout.h.

void ogdf::CircularLayout::minDistLevel ( double  x  )  [inline]

Sets the option minDistLevel to x.

Definition at line 135 of file CircularLayout.h.

void ogdf::CircularLayout::minDistSibling ( double  x  )  [inline]

Sets the option minDistSibling to x.

Definition at line 141 of file CircularLayout.h.

double ogdf::CircularLayout::minDistSibling (  )  const [inline]

Returns the option minDistSibling.

Definition at line 138 of file CircularLayout.h.

double ogdf::CircularLayout::pageRatio (  )  const [inline]

Returns the option pageRatio.

Definition at line 150 of file CircularLayout.h.

void ogdf::CircularLayout::pageRatio ( double  x  )  [inline]

Sets the option pageRatio to x.

Definition at line 153 of file CircularLayout.h.

int ogdf::CircularLayout::sizeBC ( node  vB  )  [private]

Member Data Documentation

The minimal distance between connected components.

Definition at line 161 of file CircularLayout.h.

The minimal distance between nodes on a circle.

Definition at line 158 of file CircularLayout.h.

The minimal distance between father and child circle.

Definition at line 159 of file CircularLayout.h.

The minimal distance between circles on same level.

Definition at line 160 of file CircularLayout.h.

The page ratio used for packing connected components.

Definition at line 162 of file CircularLayout.h.


The documentation for this class was generated from the following file: