Open
Graph Drawing
Framework

 v. 2022.02 (Dogwood)
 

ogdf::FlowCompaction Class Reference

represents compaction algorithm using min-cost flow in the dual of the constraint graph More...

#include <ogdf/orthogonal/FlowCompaction.h>

Public Member Functions

 FlowCompaction (int maxImprovementSteps=0, int costGen=1, int costAssoc=1)
 construction More...
 
void align (bool b)
 set alignment option More...
 
void constructiveHeuristics (PlanRep &PG, OrthoRep &OR, const RoutingChannel< int > &rc, GridLayoutMapped &drawing)
 call of constructive heuristics for orthogonal representation More...
 
int costAssoc () const
 returns option costGen More...
 
void costAssoc (int c)
 sets cost of arcs in constraint graph corresponding to associations More...
 
int costGen () const
 returns option costGen More...
 
void costGen (int c)
 sets cost of arcs in constraint graph corresponding to generalizations More...
 
void improvementHeuristics (PlanRep &PG, OrthoRep &OR, const RoutingChannel< int > &rc, GridLayoutMapped &drawing)
 call of improvement heuristics for orthogonal drawing (variable cages) More...
 
void improvementHeuristics (PlanRep &PG, OrthoRep &OR, MinimumEdgeDistances< int > &minDist, GridLayoutMapped &drawing, int originalSeparation)
 call of improvement heuristics for orthogonal drawing (tight cages) More...
 
int maxImprovementSteps () const
 returns option maxImprovementSteps More...
 
void maxImprovementSteps (int maxSteps)
 sets option maxImprovementSteps, which is the maximal number of steps performed by improvementHeuristics(). More...
 
void scalingSteps (int sc)
 sets number of separation scaling improvement steps More...
 

Private Member Functions

void computeCoords (CompactionConstraintGraph< int > &D, NodeArray< int > &pos, bool fixZeroLength=false, bool fixVertexSize=false, bool improvementHeuristics=false, bool onlyGen=false)
 
void dfsAssignPos (NodeArray< bool > &visited, NodeArray< int > &pos, node v, int x)
 

Private Attributes

bool m_align
 toggle if brother nodes in hierarchies should be aligned More...
 
bool m_cageExpense
 should cageedges be more expensive than others? will be propagated to compactionConstraintGraph More...
 
int m_costAssoc
 cost of arcs in constraint graph corresponding to associations More...
 
int m_costGen
 cost of arcs in constraint graph corresponding to generalization More...
 
EdgeArray< edgem_dualEdge
 
EdgeArray< int > m_flow
 
int m_maxImprovementSteps
 maximal number of improvement steps More...
 
int m_numGenSteps
 number of steps reserved for generalization compaction More...
 
int m_scalingSteps
 number of improvement steps with decreasing separation More...
 

Detailed Description

represents compaction algorithm using min-cost flow in the dual of the constraint graph

Definition at line 47 of file FlowCompaction.h.

Constructor & Destructor Documentation

◆ FlowCompaction()

ogdf::FlowCompaction::FlowCompaction ( int  maxImprovementSteps = 0,
int  costGen = 1,
int  costAssoc = 1 
)
explicit

construction

Member Function Documentation

◆ align()

void ogdf::FlowCompaction::align ( bool  b)
inline

set alignment option

Definition at line 119 of file FlowCompaction.h.

◆ computeCoords()

void ogdf::FlowCompaction::computeCoords ( CompactionConstraintGraph< int > &  D,
NodeArray< int > &  pos,
bool  fixZeroLength = false,
bool  fixVertexSize = false,
bool  improvementHeuristics = false,
bool  onlyGen = false 
)
private

◆ constructiveHeuristics()

void ogdf::FlowCompaction::constructiveHeuristics ( PlanRep PG,
OrthoRep OR,
const RoutingChannel< int > &  rc,
GridLayoutMapped drawing 
)

call of constructive heuristics for orthogonal representation

◆ costAssoc() [1/2]

int ogdf::FlowCompaction::costAssoc ( ) const
inline

returns option costGen

Definition at line 111 of file FlowCompaction.h.

◆ costAssoc() [2/2]

void ogdf::FlowCompaction::costAssoc ( int  c)
inline

sets cost of arcs in constraint graph corresponding to associations

Definition at line 106 of file FlowCompaction.h.

◆ costGen() [1/2]

int ogdf::FlowCompaction::costGen ( ) const
inline

returns option costGen

Definition at line 101 of file FlowCompaction.h.

◆ costGen() [2/2]

void ogdf::FlowCompaction::costGen ( int  c)
inline

sets cost of arcs in constraint graph corresponding to generalizations

Definition at line 96 of file FlowCompaction.h.

◆ dfsAssignPos()

void ogdf::FlowCompaction::dfsAssignPos ( NodeArray< bool > &  visited,
NodeArray< int > &  pos,
node  v,
int  x 
)
private

◆ improvementHeuristics() [1/2]

void ogdf::FlowCompaction::improvementHeuristics ( PlanRep PG,
OrthoRep OR,
const RoutingChannel< int > &  rc,
GridLayoutMapped drawing 
)

call of improvement heuristics for orthogonal drawing (variable cages)

◆ improvementHeuristics() [2/2]

void ogdf::FlowCompaction::improvementHeuristics ( PlanRep PG,
OrthoRep OR,
MinimumEdgeDistances< int > &  minDist,
GridLayoutMapped drawing,
int  originalSeparation 
)

call of improvement heuristics for orthogonal drawing (tight cages)

◆ maxImprovementSteps() [1/2]

int ogdf::FlowCompaction::maxImprovementSteps ( ) const
inline

returns option maxImprovementSteps

Definition at line 91 of file FlowCompaction.h.

◆ maxImprovementSteps() [2/2]

void ogdf::FlowCompaction::maxImprovementSteps ( int  maxSteps)
inline

sets option maxImprovementSteps, which is the maximal number of steps performed by improvementHeuristics().

Definition at line 86 of file FlowCompaction.h.

◆ scalingSteps()

void ogdf::FlowCompaction::scalingSteps ( int  sc)
inline

sets number of separation scaling improvement steps

Definition at line 116 of file FlowCompaction.h.

Member Data Documentation

◆ m_align

bool ogdf::FlowCompaction::m_align
private

toggle if brother nodes in hierarchies should be aligned

Definition at line 144 of file FlowCompaction.h.

◆ m_cageExpense

bool ogdf::FlowCompaction::m_cageExpense
private

should cageedges be more expensive than others? will be propagated to compactionConstraintGraph

Definition at line 140 of file FlowCompaction.h.

◆ m_costAssoc

int ogdf::FlowCompaction::m_costAssoc
private

cost of arcs in constraint graph corresponding to associations

Definition at line 139 of file FlowCompaction.h.

◆ m_costGen

int ogdf::FlowCompaction::m_costGen
private

cost of arcs in constraint graph corresponding to generalization

Definition at line 138 of file FlowCompaction.h.

◆ m_dualEdge

EdgeArray<edge> ogdf::FlowCompaction::m_dualEdge
private

Definition at line 146 of file FlowCompaction.h.

◆ m_flow

EdgeArray<int> ogdf::FlowCompaction::m_flow
private

Definition at line 147 of file FlowCompaction.h.

◆ m_maxImprovementSteps

int ogdf::FlowCompaction::m_maxImprovementSteps
private

maximal number of improvement steps

Definition at line 137 of file FlowCompaction.h.

◆ m_numGenSteps

int ogdf::FlowCompaction::m_numGenSteps
private

number of steps reserved for generalization compaction

Definition at line 142 of file FlowCompaction.h.

◆ m_scalingSteps

int ogdf::FlowCompaction::m_scalingSteps
private

number of improvement steps with decreasing separation

Definition at line 143 of file FlowCompaction.h.


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