The Orthogonal layout algorithm for planar graphs. More...
#include <ogdf/orthogonal/OrthoLayout.h>
Inheritance diagram for ogdf::OrthoLayout: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 44 of file OrthoLayout.h.
| ogdf::OrthoLayout::OrthoLayout | ( | ) |
Creates an instance of Orthogonal layout and sets options to default values.
|
inline |
Set bound on the number of bends.
Definition at line 110 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 80 of file OrthoLayout.h.
|
inline |
Sets the option m_cOverhang, which specifies the minimal distance of incident edges to the corner of a vertex.
Definition at line 83 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 89 of file OrthoLayout.h.
|
inline |
Sets the desired margin around the drawing.
Definition at line 92 of file OrthoLayout.h.
|
inline |
Returns whether the currently selected orthogonaliaztion model is progressive.
Definition at line 95 of file OrthoLayout.h.
|
inline |
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 101 of file OrthoLayout.h.
|
inline |
Returns whether scaling is used in the compaction phase.
Definition at line 104 of file OrthoLayout.h.
|
inline |
Selects if scaling is used in the compaction phase.
Definition at line 107 of file OrthoLayout.h.
|
inlineoverridevirtual |
Returns the minimum distance between edges and vertices.
Implements ogdf::LayoutPlanRepModule.
Definition at line 71 of file OrthoLayout.h.
|
inlineoverridevirtual |
Sets the minimum distance between vertices.
Implements ogdf::LayoutPlanRepModule.
Definition at line 74 of file OrthoLayout.h.
|
private |
bounds the number of bends per edge in ortho shaper
Definition at line 130 of file OrthoLayout.h.
|
private |
distance to corner (relative to node size)
Definition at line 126 of file OrthoLayout.h.
|
private |
margin around drawing
Definition at line 127 of file OrthoLayout.h.
|
private |
use progressive ortho style (prefer 180 degree angles on deg-2 vertices).
Definition at line 129 of file OrthoLayout.h.
|
private |
number of scaling steps (NOT REALLY USED!)
Definition at line 133 of file OrthoLayout.h.
|
private |
minimum distance between obkects
Definition at line 125 of file OrthoLayout.h.
|
private |
use scaling for compaction
Definition at line 132 of file OrthoLayout.h.