OpenGraph DrawingFramework

v.2015.05

ogdf::OrthoLayout Class Reference

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. More...

Calls the layout algorithm for planarized representation PG. More...

Optional parameters
double separation () const
Returns the minimum distance between edges and vertices. More...

void separation (double sep)
Sets the minimum distance between vertices. More...

double cOverhang () const
Returns the option cOverhang, which specifies the minimal distance of incident edges to the corner of a vertex. More...

void cOverhang (double c)
Sets the option cOverhang, which specifies the minimal distance of incident edges to the corner of a vertex. More...

double margin () const
Returns the desired margin around the drawing. More...

void margin (double m)
Sets the desired margin around the drawing. More...

bool progressive () const
Returns whether the currently selected orthogonaliaztion model is progressive. More...

void progressive (bool b)
Selects if the progressive (true) or traditional (false) orthogonalization model is used. More...

bool scaling () const
Returns whether scaling is used in the compaction phase. More...

void scaling (bool b)
Selects if scaling is used in the compaction phase. More...

void bendBound (int i)
Set bound on the number of bends. More...

Public Member Functions inherited from ogdf::LayoutPlanRepModule
LayoutPlanRepModule ()
Initializes a planar layout module. More...

virtual ~LayoutPlanRepModule ()
Destructor. More...

const DPointgetBoundingBox () const
Returns the bounding box of the computed layout. More...

Computes a planar layout of PG in drawing. More...

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 More...

double m_cOverhang
distance to corner (relative to node size) More...

double m_margin
margin around drawing More...

bool m_progressive
use progressive ortho style (prefer 180 degree angles on deg-2 vertices). More...

int m_scalingSteps
number of scaling steps (NOT REALLY USED!) More...

double m_separation
minimum distance between obkects More...

bool m_useScalingCompaction
use scaling for compaction More...

Protected Member Functions inherited from ogdf::LayoutPlanRepModule
void setBoundingBox (PlanRep &PG, Layout &drawing)
Computes and sets the bounding box variable m_boundingBox. More...

Protected Attributes inherited from ogdf::LayoutPlanRepModule
DPoint m_boundingBox
Stores the bounding box of the computed layout. More...

Detailed Description

The Orthogonal layout algorithm for planar graphs.

Definition at line 62 of file OrthoLayout.h.

Constructor & Destructor Documentation

 ogdf::OrthoLayout::OrthoLayout ( )

Creates an instance of Orthogonal layout and sets options to default values.

Member Function Documentation

 void ogdf::OrthoLayout::bendBound ( int i )
inline

Set bound on the number of bends.

Definition at line 141 of file OrthoLayout.h.

 void ogdf::OrthoLayout::call ( PlanRep & PG, adjEntry adjExternal, Layout & drawing )
virtual

Calls the layout algorithm for planarized representation PG.

Precondition
Parameters
 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.

 void ogdf::OrthoLayout::computeBoundingBox ( const PlanRep & PG, Layout & drawing )
private
 double ogdf::OrthoLayout::cOverhang ( ) const
inline

Returns the option cOverhang, which specifies the minimal distance of incident edges to the corner of a vertex.

cOverhang * separation is the minimum distance between the glue point of an edge and a corner of the vertex boundary.

Definition at line 103 of file OrthoLayout.h.

 void ogdf::OrthoLayout::cOverhang ( double c )
inline

Sets the option cOverhang, which specifies the minimal distance of incident edges to the corner of a vertex.

Definition at line 108 of file OrthoLayout.h.

 double ogdf::OrthoLayout::margin ( ) const
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 116 of file OrthoLayout.h.

 void ogdf::OrthoLayout::margin ( double m )
inline

Sets the desired margin around the drawing.

Definition at line 121 of file OrthoLayout.h.

 bool ogdf::OrthoLayout::progressive ( ) const
inline

Returns whether the currently selected orthogonaliaztion model is progressive.

Definition at line 126 of file OrthoLayout.h.

 void ogdf::OrthoLayout::progressive ( bool b )
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 132 of file OrthoLayout.h.

 bool ogdf::OrthoLayout::scaling ( ) const
inline

Returns whether scaling is used in the compaction phase.

Definition at line 135 of file OrthoLayout.h.

 void ogdf::OrthoLayout::scaling ( bool b )
inline

Selects if scaling is used in the compaction phase.

Definition at line 138 of file OrthoLayout.h.

 double ogdf::OrthoLayout::separation ( ) const
inlinevirtual

Returns the minimum distance between edges and vertices.

Implements ogdf::LayoutPlanRepModule.

Definition at line 90 of file OrthoLayout.h.

 void ogdf::OrthoLayout::separation ( double sep )
inlinevirtual

Sets the minimum distance between vertices.

Implements ogdf::LayoutPlanRepModule.

Definition at line 95 of file OrthoLayout.h.

Member Data Documentation

 int ogdf::OrthoLayout::m_bendBound
private

bounds the number of bends per edge in ortho shaper

Definition at line 159 of file OrthoLayout.h.

 double ogdf::OrthoLayout::m_cOverhang
private

distance to corner (relative to node size)

Definition at line 155 of file OrthoLayout.h.

 double ogdf::OrthoLayout::m_margin
private

margin around drawing

Definition at line 156 of file OrthoLayout.h.

 bool ogdf::OrthoLayout::m_progressive
private

use progressive ortho style (prefer 180 degree angles on deg-2 vertices).

Definition at line 158 of file OrthoLayout.h.

 int ogdf::OrthoLayout::m_scalingSteps
private

number of scaling steps (NOT REALLY USED!)

Definition at line 162 of file OrthoLayout.h.

 double ogdf::OrthoLayout::m_separation
private

minimum distance between obkects

Definition at line 154 of file OrthoLayout.h.

 bool ogdf::OrthoLayout::m_useScalingCompaction
private

use scaling for compaction

Definition at line 161 of file OrthoLayout.h.

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