Open
Graph Drawing
Framework

 v. 2023.09 (Elderberry)
 

Loading...
Searching...
No Matches
PlanarizationGridLayout.h
Go to the documentation of this file.
1
32#pragma once
33
37
38#include <memory>
39
40namespace ogdf {
41
93public:
96
98
110 double pageRatio() const { return m_pageRatio; }
111
113 void pageRatio(double ratio) { m_pageRatio = ratio; }
114
122
136
144 void setPacker(CCLayoutPackModule* pPacker) { m_packer.reset(pPacker); }
145
152 int numberOfCrossings() const { return m_nCrossings; }
153
155
156protected:
157 virtual void doCall(const Graph& G, GridLayout& gridLayout, IPoint& boundingBox) override;
158
159
160private:
162 std::unique_ptr<CrossingMinimizationModule> m_crossMin;
163
165 std::unique_ptr<GridLayoutPlanRepModule> m_planarLayouter;
166
168 std::unique_ptr<CCLayoutPackModule> m_packer;
169
170 double m_pageRatio;
171
173};
174
175}
Declaration of interface for algorithms that arrange/pack layouts of connected components.
Declaration of CrossingMinimization Module, an interface for crossing minimization algorithms.
Declaration of interface for grid layout algorithms.
Base class of algorithms that arrange/pack layouts of connected components.
Base class for crossing minimization algorithms.
Data type for general directed graphs (adjacency list representation).
Definition Graph_d.h:521
Representation of a graph's grid layout.
Definition GridLayout.h:46
Base class for grid layout algorithms.
Base class for grid layout algorithms operating on a PlanRep.
The planarization grid layout algorithm.
void setPlanarLayouter(GridLayoutPlanRepModule *pPlanarLayouter)
Sets the module option for the planar grid layout algorithm.
std::unique_ptr< GridLayoutPlanRepModule > m_planarLayouter
The module for computing a planar grid layout.
std::unique_ptr< CCLayoutPackModule > m_packer
The module for arranging connected components.
void setPacker(CCLayoutPackModule *pPacker)
Sets the module option for the arrangement of connected components.
void pageRatio(double ratio)
Sets the option pageRatio to ratio.
virtual void doCall(const Graph &G, GridLayout &gridLayout, IPoint &boundingBox) override
Implements the algorithm call.
double m_pageRatio
The desired page ratio.
double pageRatio() const
Returns the current setting of option pageRatio.
PlanarizationGridLayout()
Creates an instance of planarization layout and sets options to default values.
std::unique_ptr< CrossingMinimizationModule > m_crossMin
The module for computing a planar subgraph.
int numberOfCrossings() const
Returns the number of crossings in computed layout.
int m_nCrossings
The number of crossings in the computed layout.
void setCrossMin(CrossingMinimizationModule *pCrossMin)
Sets the module option for crossing minimization.
#define OGDF_EXPORT
Specifies that a function or class is exported by the OGDF DLL.
Definition config.h:101
static MultilevelBuilder * getDoubleFactoredZeroAdjustedMerger()
The namespace for all OGDF objects.