Open
Graph Drawing
Framework

 v. 2022.02 (Dogwood)
 

ogdf::SpringEmbedderFRExact Class Reference

Fruchterman-Reingold algorithm with (exact) layout. More...

#include <ogdf/energybased/SpringEmbedderFRExact.h>

+ Inheritance diagram for ogdf::SpringEmbedderFRExact:

Classes

class  ArrayGraph
 

Public Types

enum  CoolingFunction { CoolingFunction::Factor, CoolingFunction::Logarithmic }
 

Public Member Functions

 SpringEmbedderFRExact ()
 Creates an instance of Fruchterman/Reingold (exact) layout. More...
 
virtual void call (GraphAttributes &GA) override
 Calls the layout algorithm for graph attributes GA. More...
 
bool checkConvergence ()
 
void checkConvergence (bool b)
 
void convTolerance (double tol)
 
CoolingFunction coolingFunction () const
 Returns the current setting for the cooling function. More...
 
void coolingFunction (CoolingFunction f)
 Sets the parameter coolingFunction to f. More...
 
double idealEdgeLength () const
 Returns the ideal edge length. More...
 
void idealEdgeLength (double len)
 Sets the ideal edge length to len. More...
 
int iterations () const
 Returns the current setting of iterations. More...
 
void iterations (int i)
 Sets the number of iterations to i. More...
 
double minDistCC () const
 Returns the minimum distance between connected components. More...
 
void minDistCC (double x)
 Sets the minimum distance between connected components to x. More...
 
void nodeWeights (bool on)
 Switches use of node weights given in GraphAttributtes. More...
 
bool noise () const
 Returns the current setting of nodes. More...
 
void noise (bool on)
 Sets the parameter noise to on. More...
 
double pageRatio ()
 Returns the page ratio. More...
 
void pageRatio (double x)
 Sets the page ration to x. More...
 
- Public Member Functions inherited from ogdf::ForceLayoutModule
 ForceLayoutModule ()
 Initializes a force layout module. More...
 
virtual ~ForceLayoutModule ()
 
virtual void call (MultilevelGraph &MLG)
 Computes a layout of graph MLG. More...
 
- Public Member Functions inherited from ogdf::LayoutModule
 LayoutModule ()
 Initializes a layout module. More...
 
virtual ~LayoutModule ()
 
void operator() (GraphAttributes &GA)
 Computes a layout of graph GA. More...
 

Private Member Functions

void cool (double &tx, double &ty, int &cF)
 
void initialize (ArrayGraph &component)
 
double log2 (double x)
 
void mainStep (ArrayGraph &component)
 
void mainStep_sse3 (ArrayGraph &component)
 
double mylog2 (int x)
 

Private Attributes

bool m_checkConvergence
 
double m_convTolerance
 
double m_coolFactor_x
 
double m_coolFactor_y
 
CoolingFunction m_coolingFunction
 The selected cooling function. More...
 
double m_idealEdgeLength
 The ideal edge length. More...
 
int m_iterations
 The number of iterations. More...
 
double m_minDistCC
 The minimal distance between connected components. More...
 
bool m_noise
 Perform random perturbations? More...
 
double m_pageRatio
 The page ratio. More...
 
double m_txNull
 
double m_tyNull
 
bool m_useNodeWeight
 

Detailed Description

Fruchterman-Reingold algorithm with (exact) layout.

Definition at line 41 of file SpringEmbedderFRExact.h.

Member Enumeration Documentation

◆ CoolingFunction

Enumerator
Factor 
Logarithmic 

Definition at line 44 of file SpringEmbedderFRExact.h.

Constructor & Destructor Documentation

◆ SpringEmbedderFRExact()

ogdf::SpringEmbedderFRExact::SpringEmbedderFRExact ( )

Creates an instance of Fruchterman/Reingold (exact) layout.

Member Function Documentation

◆ call()

virtual void ogdf::SpringEmbedderFRExact::call ( GraphAttributes GA)
overridevirtual

Calls the layout algorithm for graph attributes GA.

Implements ogdf::ForceLayoutModule.

◆ checkConvergence() [1/2]

bool ogdf::SpringEmbedderFRExact::checkConvergence ( )
inline

Definition at line 106 of file SpringEmbedderFRExact.h.

◆ checkConvergence() [2/2]

void ogdf::SpringEmbedderFRExact::checkConvergence ( bool  b)
inline

Definition at line 105 of file SpringEmbedderFRExact.h.

◆ convTolerance()

void ogdf::SpringEmbedderFRExact::convTolerance ( double  tol)
inline

Definition at line 107 of file SpringEmbedderFRExact.h.

◆ cool()

void ogdf::SpringEmbedderFRExact::cool ( double &  tx,
double &  ty,
int &  cF 
)
private

◆ coolingFunction() [1/2]

CoolingFunction ogdf::SpringEmbedderFRExact::coolingFunction ( ) const
inline

Returns the current setting for the cooling function.

Definition at line 78 of file SpringEmbedderFRExact.h.

◆ coolingFunction() [2/2]

void ogdf::SpringEmbedderFRExact::coolingFunction ( CoolingFunction  f)
inline

Sets the parameter coolingFunction to f.

Definition at line 83 of file SpringEmbedderFRExact.h.

◆ idealEdgeLength() [1/2]

double ogdf::SpringEmbedderFRExact::idealEdgeLength ( ) const
inline

Returns the ideal edge length.

Definition at line 88 of file SpringEmbedderFRExact.h.

◆ idealEdgeLength() [2/2]

void ogdf::SpringEmbedderFRExact::idealEdgeLength ( double  len)
inline

Sets the ideal edge length to len.

Definition at line 91 of file SpringEmbedderFRExact.h.

◆ initialize()

void ogdf::SpringEmbedderFRExact::initialize ( ArrayGraph component)
private

◆ iterations() [1/2]

int ogdf::SpringEmbedderFRExact::iterations ( ) const
inline

Returns the current setting of iterations.

Definition at line 53 of file SpringEmbedderFRExact.h.

◆ iterations() [2/2]

void ogdf::SpringEmbedderFRExact::iterations ( int  i)
inline

Sets the number of iterations to i.

Definition at line 58 of file SpringEmbedderFRExact.h.

◆ log2()

double ogdf::SpringEmbedderFRExact::log2 ( double  x)
inlineprivate

Definition at line 143 of file SpringEmbedderFRExact.h.

◆ mainStep()

void ogdf::SpringEmbedderFRExact::mainStep ( ArrayGraph component)
private

◆ mainStep_sse3()

void ogdf::SpringEmbedderFRExact::mainStep_sse3 ( ArrayGraph component)
private

◆ minDistCC() [1/2]

double ogdf::SpringEmbedderFRExact::minDistCC ( ) const
inline

Returns the minimum distance between connected components.

Definition at line 94 of file SpringEmbedderFRExact.h.

◆ minDistCC() [2/2]

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

Sets the minimum distance between connected components to x.

Definition at line 97 of file SpringEmbedderFRExact.h.

◆ mylog2()

double ogdf::SpringEmbedderFRExact::mylog2 ( int  x)
inlineprivate

Definition at line 144 of file SpringEmbedderFRExact.h.

◆ nodeWeights()

void ogdf::SpringEmbedderFRExact::nodeWeights ( bool  on)
inline

Switches use of node weights given in GraphAttributtes.

Definition at line 74 of file SpringEmbedderFRExact.h.

◆ noise() [1/2]

bool ogdf::SpringEmbedderFRExact::noise ( ) const
inline

Returns the current setting of nodes.

Definition at line 64 of file SpringEmbedderFRExact.h.

◆ noise() [2/2]

void ogdf::SpringEmbedderFRExact::noise ( bool  on)
inline

Sets the parameter noise to on.

Definition at line 69 of file SpringEmbedderFRExact.h.

◆ pageRatio() [1/2]

double ogdf::SpringEmbedderFRExact::pageRatio ( )
inline

Returns the page ratio.

Definition at line 100 of file SpringEmbedderFRExact.h.

◆ pageRatio() [2/2]

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

Sets the page ration to x.

Definition at line 103 of file SpringEmbedderFRExact.h.

Member Data Documentation

◆ m_checkConvergence

bool ogdf::SpringEmbedderFRExact::m_checkConvergence
private

Definition at line 193 of file SpringEmbedderFRExact.h.

◆ m_convTolerance

double ogdf::SpringEmbedderFRExact::m_convTolerance
private

Definition at line 194 of file SpringEmbedderFRExact.h.

◆ m_coolFactor_x

double ogdf::SpringEmbedderFRExact::m_coolFactor_x
private

Definition at line 179 of file SpringEmbedderFRExact.h.

◆ m_coolFactor_y

double ogdf::SpringEmbedderFRExact::m_coolFactor_y
private

Definition at line 180 of file SpringEmbedderFRExact.h.

◆ m_coolingFunction

CoolingFunction ogdf::SpringEmbedderFRExact::m_coolingFunction
private

The selected cooling function.

Definition at line 172 of file SpringEmbedderFRExact.h.

◆ m_idealEdgeLength

double ogdf::SpringEmbedderFRExact::m_idealEdgeLength
private

The ideal edge length.

Definition at line 182 of file SpringEmbedderFRExact.h.

◆ m_iterations

int ogdf::SpringEmbedderFRExact::m_iterations
private

The number of iterations.

Definition at line 170 of file SpringEmbedderFRExact.h.

◆ m_minDistCC

double ogdf::SpringEmbedderFRExact::m_minDistCC
private

The minimal distance between connected components.

Definition at line 183 of file SpringEmbedderFRExact.h.

◆ m_noise

bool ogdf::SpringEmbedderFRExact::m_noise
private

Perform random perturbations?

Definition at line 171 of file SpringEmbedderFRExact.h.

◆ m_pageRatio

double ogdf::SpringEmbedderFRExact::m_pageRatio
private

The page ratio.

Definition at line 184 of file SpringEmbedderFRExact.h.

◆ m_txNull

double ogdf::SpringEmbedderFRExact::m_txNull
private

Definition at line 189 of file SpringEmbedderFRExact.h.

◆ m_tyNull

double ogdf::SpringEmbedderFRExact::m_tyNull
private

Definition at line 190 of file SpringEmbedderFRExact.h.

◆ m_useNodeWeight

bool ogdf::SpringEmbedderFRExact::m_useNodeWeight
private

Definition at line 192 of file SpringEmbedderFRExact.h.


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