Open
Graph Drawing
Framework

 v. 2023.09 (Elderberry)
 

Loading...
Searching...
No Matches
ogdf::Layout Class Reference

Stores a layout of a graph (coordinates of nodes, bend points of edges). More...

#include <ogdf/basic/Layout.h>

Public Member Functions

 Layout (const Graph &G)
 Creates a layout associated with graph G.
 
const NodeArray< double > & x () const
 Returns a reference to the array storing x-coordinates of nodes.
 
NodeArray< double > & x ()
 Returns a reference to the array storing x-coordinates of nodes.
 
const NodeArray< double > & y () const
 Returns a reference to the array storing y-coordinates of nodes.
 
NodeArray< double > & y ()
 Returns a reference to the array storing y-coordinates of nodes.
 
const doublex (node v) const
 Returns the x-coordinate of node v.
 
doublex (node v)
 Returns the x-coordinate of node v.
 
const doubley (node v) const
 Returns the y-coordinate of node v.
 
doubley (node v)
 Returns the y-coordinate of node v.
 
const DPolylinebends (edge e) const
 Returns the bend point list of edge e.
 
DPolylinebends (edge e)
 Returns the bend point list of edge e.
 
void computePolyline (GraphCopy &GC, edge eOrig, DPolyline &dpl) const
 Returns the polyline of edge eOrig in dpl.
 
void computePolylineClear (PlanRep &PG, edge eOrig, DPolyline &dpl)
 Returns the polyline of edge eOrig in dpl and clears the bend points of the copies.
 
DPoint computeBoundingBox (PlanRep &PG) const
 Computes the bounding box of the layout, which is a drawing of PG.
 

Private Attributes

EdgeArray< DPolylinem_bends
 The bend points of edges.
 
NodeArray< doublem_x
 The x-coordinates of nodes.
 
NodeArray< doublem_y
 The y-coordinates of nodes.
 

Detailed Description

Stores a layout of a graph (coordinates of nodes, bend points of edges).

Definition at line 46 of file Layout.h.

Constructor & Destructor Documentation

◆ Layout() [1/2]

ogdf::Layout::Layout ( )
inline

Creates a layout associated with no graph.

Definition at line 51 of file Layout.h.

◆ Layout() [2/2]

ogdf::Layout::Layout ( const Graph G)
inlineexplicit

Creates a layout associated with graph G.

The layout is initialized such that all node positions are (0,0) and all bend point lists of edges are empty.

Parameters
Gis the corresponding graph .

Definition at line 61 of file Layout.h.

Member Function Documentation

◆ bends() [1/2]

DPolyline & ogdf::Layout::bends ( edge  e)
inline

Returns the bend point list of edge e.

Definition at line 111 of file Layout.h.

◆ bends() [2/2]

const DPolyline & ogdf::Layout::bends ( edge  e) const
inline

Returns the bend point list of edge e.

Definition at line 106 of file Layout.h.

◆ computeBoundingBox()

DPoint ogdf::Layout::computeBoundingBox ( PlanRep PG) const

Computes the bounding box of the layout, which is a drawing of PG.

Parameters
PGmust be the planarized representation associated with this layout.
Returns
a point representing the with and height of this layout, respecting the sizes of nodes as stored in PG.

◆ computePolyline()

void ogdf::Layout::computePolyline ( GraphCopy GC,
edge  eOrig,
DPolyline dpl 
) const

Returns the polyline of edge eOrig in dpl.

Parameters
GCis the input graph copy; GC must also be the associated graph.
eOrigis an edge in the original graph of GC.
dplis assigned the poyline of eOrig.

◆ computePolylineClear()

void ogdf::Layout::computePolylineClear ( PlanRep PG,
edge  eOrig,
DPolyline dpl 
)

Returns the polyline of edge eOrig in dpl and clears the bend points of the copies.

The bend point lists of all edges in the edge path corresponding to eOrig are empty afterwards! This is a faster version of computePolyline().

Parameters
PGis the input graph copy; PG must also be the associated graph. of this layout.
eOrigis an edge in the original graph of PG.
dplis assigned the poyline of eOrig.

◆ x() [1/4]

NodeArray< double > & ogdf::Layout::x ( )
inline

Returns a reference to the array storing x-coordinates of nodes.

Definition at line 71 of file Layout.h.

◆ x() [2/4]

const NodeArray< double > & ogdf::Layout::x ( ) const
inline

Returns a reference to the array storing x-coordinates of nodes.

Definition at line 66 of file Layout.h.

◆ x() [3/4]

double & ogdf::Layout::x ( node  v)
inline

Returns the x-coordinate of node v.

Definition at line 91 of file Layout.h.

◆ x() [4/4]

const double & ogdf::Layout::x ( node  v) const
inline

Returns the x-coordinate of node v.

Definition at line 86 of file Layout.h.

◆ y() [1/4]

NodeArray< double > & ogdf::Layout::y ( )
inline

Returns a reference to the array storing y-coordinates of nodes.

Definition at line 81 of file Layout.h.

◆ y() [2/4]

const NodeArray< double > & ogdf::Layout::y ( ) const
inline

Returns a reference to the array storing y-coordinates of nodes.

Definition at line 76 of file Layout.h.

◆ y() [3/4]

double & ogdf::Layout::y ( node  v)
inline

Returns the y-coordinate of node v.

Definition at line 101 of file Layout.h.

◆ y() [4/4]

const double & ogdf::Layout::y ( node  v) const
inline

Returns the y-coordinate of node v.

Definition at line 96 of file Layout.h.

Member Data Documentation

◆ m_bends

EdgeArray<DPolyline> ogdf::Layout::m_bends
private

The bend points of edges.

Definition at line 149 of file Layout.h.

◆ m_x

NodeArray<double> ogdf::Layout::m_x
private

The x-coordinates of nodes.

Definition at line 147 of file Layout.h.

◆ m_y

NodeArray<double> ogdf::Layout::m_y
private

The y-coordinates of nodes.

Definition at line 148 of file Layout.h.


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