Open
Graph Drawing
Framework

 v. 2023.09 (Elderberry)
 

ogdf::FMMMOptions Class Reference

#include <ogdf/energybased/fmmm/FMMMOptions.h>

Public Types

enum  AllowedPositions { AllowedPositions::All, AllowedPositions::Integer, AllowedPositions::Exponent }
 Specifies which positions for a node are allowed. More...
 
enum  EdgeLengthMeasurement { EdgeLengthMeasurement::Midpoint, EdgeLengthMeasurement::BoundingCircle }
 Specifies how the length of an edge is measured. More...
 
enum  ForceModel { ForceModel::FruchtermanReingold, ForceModel::Eades, ForceModel::New }
 Specifies the force model. More...
 
enum  GalaxyChoice { GalaxyChoice::UniformProb, GalaxyChoice::NonUniformProbLowerMass, GalaxyChoice::NonUniformProbHigherMass }
 Specifies how sun nodes of galaxies are selected. More...
 
enum  InitialPlacementForces { InitialPlacementForces::UniformGrid, InitialPlacementForces::RandomTime, InitialPlacementForces::RandomRandIterNr, InitialPlacementForces::KeepPositions }
 Specifies how the initial placement is done. More...
 
enum  InitialPlacementMult { InitialPlacementMult::Simple, InitialPlacementMult::Advanced }
 Specifies how the initial placement is generated. More...
 
enum  MaxIterChange { MaxIterChange::Constant, MaxIterChange::LinearlyDecreasing, MaxIterChange::RapidlyDecreasing }
 Specifies how MaxIterations is changed in subsequent multilevels. More...
 
enum  PageFormatType { PageFormatType::Portrait, PageFormatType::Landscape, PageFormatType::Square }
 Possible page formats. More...
 
enum  PreSort { PreSort::None, PreSort::DecreasingHeight, PreSort::DecreasingWidth }
 Specifies how connected components are sorted before the packing algorithm is applied. More...
 
enum  QualityVsSpeed { QualityVsSpeed::GorgeousAndEfficient, QualityVsSpeed::BeautifulAndFast, QualityVsSpeed::NiceAndIncredibleSpeed }
 Trade-off between run-time and quality. More...
 
enum  ReducedTreeConstruction { ReducedTreeConstruction::PathByPath, ReducedTreeConstruction::SubtreeBySubtree }
 Specifies how the reduced bucket quadtree is constructed. More...
 
enum  RepulsiveForcesMethod { RepulsiveForcesMethod::Exact, RepulsiveForcesMethod::GridApproximation, RepulsiveForcesMethod::NMM }
 Specifies how to calculate repulsive forces. More...
 
enum  SmallestCellFinding { SmallestCellFinding::Iteratively, SmallestCellFinding::Aluru }
 Specifies how to calculate the smallest quadratic cell that surrounds the particles of a node in the reduced bucket quadtree. More...
 
enum  StopCriterion { StopCriterion::FixedIterations, StopCriterion::Threshold, StopCriterion::FixedIterationsOrThreshold }
 Specifies the stop criterion. More...
 
enum  TipOver { TipOver::None, TipOver::NoGrowingRow, TipOver::Always }
 Specifies in which case it is allowed to tip over drawings of connected components. More...
 

Detailed Description

Definition at line 36 of file FMMMOptions.h.

Member Enumeration Documentation

◆ AllowedPositions

Specifies which positions for a node are allowed.

Enumerator
All 

Every position is allowed.

Integer 

Only integer positions are allowed that are in a range depending on the number of nodes and the average ideal edge length.

Exponent 

Only integer positions in a range of -2^MaxIntPosExponent to 2^MaxIntPosExponent are alllowed.

Definition at line 59 of file FMMMOptions.h.

◆ EdgeLengthMeasurement

Specifies how the length of an edge is measured.

Enumerator
Midpoint 

Measure from center point of edge end points.

BoundingCircle 

Measure from border of circle s surrounding edge end points.

Definition at line 53 of file FMMMOptions.h.

◆ ForceModel

Specifies the force model.

Enumerator
FruchtermanReingold 

The force-model by Fruchterman, Reingold.

Eades 

The force-model by Eades.

New 

The new force-model.

Definition at line 108 of file FMMMOptions.h.

◆ GalaxyChoice

Specifies how sun nodes of galaxies are selected.

Enumerator
UniformProb 

selecting by uniform random probability

NonUniformProbLowerMass 

selecting by non-uniform probability depending on the star masses (prefering nodes with lower star mass)

NonUniformProbHigherMass 

as above but prefering nodes with higher star mass

Definition at line 87 of file FMMMOptions.h.

◆ InitialPlacementForces

Specifies how the initial placement is done.

Enumerator
UniformGrid 

Uniform placement on a grid.

RandomTime 

Random placement (based on current time).

RandomRandIterNr 

Random placement (based on randIterNr()).

KeepPositions 

No change in placement.

Definition at line 129 of file FMMMOptions.h.

◆ InitialPlacementMult

Specifies how the initial placement is generated.

Enumerator
Simple 

only using information about placement of nodes on higher levels

Advanced 

using additional information about the placement of all inter solar system nodes

Definition at line 102 of file FMMMOptions.h.

◆ MaxIterChange

Specifies how MaxIterations is changed in subsequent multilevels.

Enumerator
Constant 

kept constant at the force calculation step at every level

LinearlyDecreasing 

linearly decreasing from MaxIterFactor*FixedIterations to FixedIterations

RapidlyDecreasing 

rapdily decreasing from MaxIterFactor*FixedIterations to FixedIterations

Definition at line 95 of file FMMMOptions.h.

◆ PageFormatType

Possible page formats.

Enumerator
Portrait 

A4 portrait page.

Landscape 

A4 landscape page.

Square 

Square format.

Definition at line 39 of file FMMMOptions.h.

◆ PreSort

Specifies how connected components are sorted before the packing algorithm is applied.

Enumerator
None 

Do not presort.

DecreasingHeight 

Presort by decreasing height of components.

DecreasingWidth 

Presort by decreasing width of components.

Definition at line 80 of file FMMMOptions.h.

◆ QualityVsSpeed

Trade-off between run-time and quality.

Enumerator
GorgeousAndEfficient 

Best quality.

BeautifulAndFast 

Medium quality and speed.

NiceAndIncredibleSpeed 

Best speed.

Definition at line 46 of file FMMMOptions.h.

◆ ReducedTreeConstruction

Specifies how the reduced bucket quadtree is constructed.

Enumerator
PathByPath 

Path-by-path construction.

SubtreeBySubtree 

Subtree-by-subtree construction.

Definition at line 137 of file FMMMOptions.h.

◆ RepulsiveForcesMethod

Specifies how to calculate repulsive forces.

Enumerator
Exact 

Exact calculation (slow).

GridApproximation 

Grid approximation (inaccurate).

NMM 

Calculation as for new multipole method (fast and accurate).

Definition at line 115 of file FMMMOptions.h.

◆ SmallestCellFinding

Specifies how to calculate the smallest quadratic cell that surrounds the particles of a node in the reduced bucket quadtree.

Enumerator
Iteratively 

Iteratively (in constant time).

Aluru 

According to formula by Aluru et al.

(in constant time).

Definition at line 144 of file FMMMOptions.h.

◆ StopCriterion

Specifies the stop criterion.

Enumerator
FixedIterations 

Stop if fixedIterations() is reached.

Threshold 

Stop if threshold() is reached.

FixedIterationsOrThreshold 

Stop if fixedIterations() or threshold() is reached.

Definition at line 122 of file FMMMOptions.h.

◆ TipOver

Specifies in which case it is allowed to tip over drawings of connected components.

Enumerator
None 

not allowed at all

NoGrowingRow 

only if the height of the packing row does not grow

Always 

always allowed

Definition at line 73 of file FMMMOptions.h.


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