Open
Graph Drawing
Framework

 v.2015.05
 

ogdf::CircularLayout Class Reference

The circular layout algorithm. More...

#include <ogdf/misclayout/CircularLayout.h>

+ Inheritance diagram for ogdf::CircularLayout:

Public Member Functions

 CircularLayout ()
 Creates an instance of circular layout. More...
 
 ~CircularLayout ()
 
The algorithm call
void call (GraphAttributes &GA)
 Computes a circular layout for graph attributes GA. More...
 
Optional parameters
double minDistCircle () const
 Returns the option minDistCircle. More...
 
void minDistCircle (double x)
 Sets the option minDistCircle to x. More...
 
double minDistLevel () const
 Returns the option minDistLevel. More...
 
void minDistLevel (double x)
 Sets the option minDistLevel to x. More...
 
double minDistSibling () const
 Returns the option minDistSibling. More...
 
void minDistSibling (double x)
 Sets the option minDistSibling to x. More...
 
double minDistCC () const
 Returns the option minDistCC. More...
 
void minDistCC (double x)
 Sets the option minDistCC to x. More...
 
double pageRatio () const
 Returns the option pageRatio. More...
 
void pageRatio (double x)
 Sets the option pageRatio to x. More...
 
- Public Member Functions inherited from ogdf::LayoutModule
 LayoutModule ()
 Initializes a layout module. More...
 
virtual ~LayoutModule ()
 
virtual void call (GraphAttributes &GA, GraphConstraints &GC)
 Computes a layout of graph GA wrt the constraints in GC (if applicable). More...
 
void operator() (GraphAttributes &GA)
 Computes a layout of graph GA. More...
 

Private Member Functions

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

Private Attributes

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

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 92 of file CircularLayout.h.

Constructor & Destructor Documentation

ogdf::CircularLayout::CircularLayout ( )

Creates an instance of circular layout.

ogdf::CircularLayout::~CircularLayout ( )
inline

Definition at line 99 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 135 of file CircularLayout.h.

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

Sets the option minDistCC to x.

Definition at line 138 of file CircularLayout.h.

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

Returns the option minDistCircle.

Definition at line 117 of file CircularLayout.h.

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

Sets the option minDistCircle to x.

Definition at line 120 of file CircularLayout.h.

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

Returns the option minDistLevel.

Definition at line 123 of file CircularLayout.h.

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

Sets the option minDistLevel to x.

Definition at line 126 of file CircularLayout.h.

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

Returns the option minDistSibling.

Definition at line 129 of file CircularLayout.h.

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

Sets the option minDistSibling to x.

Definition at line 132 of file CircularLayout.h.

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

Returns the option pageRatio.

Definition at line 141 of file CircularLayout.h.

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

Sets the option pageRatio to x.

Definition at line 144 of file CircularLayout.h.

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

Member Data Documentation

double ogdf::CircularLayout::m_minDistCC
private

The minimal distance between connected components.

Definition at line 152 of file CircularLayout.h.

double ogdf::CircularLayout::m_minDistCircle
private

The minimal distance between nodes on a circle.

Definition at line 149 of file CircularLayout.h.

double ogdf::CircularLayout::m_minDistLevel
private

The minimal distance between father and child circle.

Definition at line 150 of file CircularLayout.h.

double ogdf::CircularLayout::m_minDistSibling
private

The minimal distance between circles on same level.

Definition at line 151 of file CircularLayout.h.

double ogdf::CircularLayout::m_pageRatio
private

The page ratio used for packing connected components.

Definition at line 153 of file CircularLayout.h.


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