The Orthogonal layout algorithm for planar graphs. More...
#include <ogdf/orthogonal/OrthoLayout.h>
Public Member Functions | |
OrthoLayout () | |
Creates an instance of Orthogonal layout and sets options to default values. | |
virtual void | call (PlanRep &PG, adjEntry adjExternal, Layout &drawing) override |
Calls the layout algorithm for planarized representation PG . | |
Optional parameters | |
double | separation () const override |
Returns the minimum distance between edges and vertices. | |
void | separation (double sep) override |
Sets the minimum distance between vertices. | |
double | cOverhang () const |
Returns the option m_cOverhang, which specifies the minimal distance of incident edges to the corner of a vertex. | |
void | cOverhang (double c) |
Sets the option m_cOverhang, which specifies the minimal distance of incident edges to the corner of a vertex. | |
double | margin () const |
Returns the desired margin around the drawing. | |
void | margin (double m) |
Sets the desired margin around the drawing. | |
bool | progressive () const |
Returns whether the currently selected orthogonaliaztion model is progressive. | |
void | progressive (bool b) |
Selects if the progressive (true) or traditional (false) orthogonalization model is used. | |
bool | scaling () const |
Returns whether scaling is used in the compaction phase. | |
void | scaling (bool b) |
Selects if scaling is used in the compaction phase. | |
void | bendBound (int i) |
Set bound on the number of bends. | |
Public Member Functions inherited from ogdf::LayoutPlanRepModule | |
LayoutPlanRepModule () | |
Initializes a planar layout module. | |
virtual | ~LayoutPlanRepModule () |
Destructor. | |
const DPoint & | getBoundingBox () const |
Returns the bounding box of the computed layout. | |
void | operator() (PlanRep &PG, adjEntry adjExternal, Layout &drawing) |
Computes a planar layout of PG in drawing . | |
Private Member Functions | |
void | computeBoundingBox (const PlanRep &PG, Layout &drawing) |
Private Attributes | |
int | m_bendBound |
bounds the number of bends per edge in ortho shaper | |
double | m_cOverhang |
distance to corner (relative to node size) | |
double | m_margin |
margin around drawing | |
bool | m_progressive |
use progressive ortho style (prefer 180 degree angles on deg-2 vertices). | |
int | m_scalingSteps |
number of scaling steps (NOT REALLY USED!) | |
double | m_separation |
minimum distance between obkects | |
bool | m_useScalingCompaction |
use scaling for compaction | |
Additional Inherited Members | |
Protected Member Functions inherited from ogdf::LayoutPlanRepModule | |
void | setBoundingBox (PlanRep &PG, Layout &drawing) |
Computes and sets the bounding box variable m_boundingBox. | |
Protected Attributes inherited from ogdf::LayoutPlanRepModule | |
DPoint | m_boundingBox |
Stores the bounding box of the computed layout. | |
The Orthogonal layout algorithm for planar graphs.
Definition at line 41 of file OrthoLayout.h.
ogdf::OrthoLayout::OrthoLayout | ( | ) |
Creates an instance of Orthogonal layout and sets options to default values.
Set bound on the number of bends.
Definition at line 107 of file OrthoLayout.h.
|
overridevirtual |
Calls the layout algorithm for planarized representation PG
.
PG
is embedded and adjExternal
is an adjecenty entry in PG
.PG | is the planarized representation for which a layout shall be computed. PG may be modified during the call. |
adjExternal | is an adjaceny entry in PG that shall be on the external face of the drawing. |
drawing | is assigned the final layout. |
Implements ogdf::LayoutPlanRepModule.
|
inline |
Returns the option m_cOverhang, which specifies the minimal distance of incident edges to the corner of a vertex.
m_cOverhang * m_separation is the minimum distance between the glue point of an edge and a corner of the vertex boundary.
Definition at line 77 of file OrthoLayout.h.
Sets the option m_cOverhang, which specifies the minimal distance of incident edges to the corner of a vertex.
Definition at line 80 of file OrthoLayout.h.
|
inline |
Returns the desired margin around the drawing.
This is the distance between the tight bounding box and the boundary of the drawing.
Definition at line 86 of file OrthoLayout.h.
Sets the desired margin around the drawing.
Definition at line 89 of file OrthoLayout.h.
|
inline |
Returns whether the currently selected orthogonaliaztion model is progressive.
Definition at line 92 of file OrthoLayout.h.
Selects if the progressive (true) or traditional (false) orthogonalization model is used.
In the progressive model, 180 degree angles at degree-2 nodes are preferred.
Definition at line 98 of file OrthoLayout.h.
|
inline |
Returns whether scaling is used in the compaction phase.
Definition at line 101 of file OrthoLayout.h.
Selects if scaling is used in the compaction phase.
Definition at line 104 of file OrthoLayout.h.
|
inlineoverridevirtual |
Returns the minimum distance between edges and vertices.
Implements ogdf::LayoutPlanRepModule.
Definition at line 68 of file OrthoLayout.h.
Sets the minimum distance between vertices.
Implements ogdf::LayoutPlanRepModule.
Definition at line 71 of file OrthoLayout.h.
|
private |
bounds the number of bends per edge in ortho shaper
Definition at line 127 of file OrthoLayout.h.
|
private |
distance to corner (relative to node size)
Definition at line 123 of file OrthoLayout.h.
|
private |
margin around drawing
Definition at line 124 of file OrthoLayout.h.
|
private |
use progressive ortho style (prefer 180 degree angles on deg-2 vertices).
Definition at line 126 of file OrthoLayout.h.
|
private |
number of scaling steps (NOT REALLY USED!)
Definition at line 130 of file OrthoLayout.h.
|
private |
minimum distance between obkects
Definition at line 122 of file OrthoLayout.h.
|
private |
use scaling for compaction
Definition at line 129 of file OrthoLayout.h.