Loading [MathJax]/extensions/tex2jax.js

Open
Graph Drawing
Framework

 v. 2023.09 (Elderberry)
 

All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Modules Pages
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.