Open
Graph Drawing
Framework

 v. 2023.09 (Elderberry)
 

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

Stores additional attributes of a graph (like layout information). More...

#include <ogdf/basic/GraphAttributes.h>

+ Inheritance diagram for ogdf::GraphAttributes:

Public Member Functions

Construction and management of attributes
 GraphAttributes ()
 Constructs graph attributes for no associated graph (default constructor).
 
 GraphAttributes (const Graph &G, long attr=nodeGraphics|edgeGraphics)
 Constructs graph attributes associated with the graph G.
 
 GraphAttributes (const GraphAttributes &)=default
 Copy constructor.
 
GraphAttributesoperator= (const GraphAttributes &)=default
 Copy assignment operator.
 
virtual ~GraphAttributes ()
 
long attributes () const
 Returns currently accessible attributes.
 
bool has (long attr) const
 Returns true iff all attributes in attr are available.
 
virtual void init (const Graph &G, long attr)
 Initializes the graph attributes for graph G.
 
void init (long attr)
 Re-initializes the graph attributes while maintaining the associated graph.
 
void addAttributes (long attr)
 Enables attributes specified by attr and allocates required memory.
 
void destroyAttributes (long attr)
 Disables attributes specified by attr and releases available memory.
 
const GraphconstGraph () const
 Returns a reference to the associated graph.
 
General attributes
bool directed () const
 Returns if the graph is directed.
 
booldirected ()
 Returns if the graph is directed.
 
Node attributes
double x (node v) const
 Returns the x-coordinate of node v.
 
doublex (node v)
 Returns the x-coordinate of node v.
 
double y (node v) const
 Returns the y-coordinate of node v.
 
doubley (node v)
 Returns the y-coordinate of node v.
 
double z (node v) const
 Returns the z-coordinate of node v.
 
doublez (node v)
 Returns the z-coordinate of node v.
 
double xLabel (node v) const
 Returns the label x-coordinate of node v.
 
doublexLabel (node v)
 Returns the label x-coordinate of node v.
 
double yLabel (node v) const
 Returns the label y-coordinate of node v.
 
doubleyLabel (node v)
 Returns the label y-coordinate of node v.
 
double zLabel (node v) const
 Returns the label z-coordinate of node v.
 
doublezLabel (node v)
 Returns the label z-coordinate of node v.
 
double width (node v) const
 Returns the width of the bounding box of node v.
 
doublewidth (node v)
 Returns the width of the bounding box of node v.
 
const NodeArray< double > & width () const
 Returns a reference to the node array m_width.
 
NodeArray< double > & width ()
 Returns a reference to the node array #m_width.
 
double height (node v) const
 Returns the height of the bounding box of node v.
 
doubleheight (node v)
 Returns the height of the bounding box of node v.
 
const NodeArray< double > & height () const
 Returns a reference to the node array m_height.
 
NodeArray< double > & height ()
 Returns a reference to the node array m_height.
 
Shape shape (node v) const
 Returns the shape type of node v.
 
Shapeshape (node v)
 Returns the shape type of node v.
 
StrokeType strokeType (node v) const
 Returns the stroke type of node v.
 
StrokeTypestrokeType (node v)
 Returns the stroke type of node v.
 
const ColorstrokeColor (node v) const
 Returns the stroke color of node v.
 
ColorstrokeColor (node v)
 Returns the stroke color of node v.
 
float strokeWidth (node v) const
 Returns the stroke width of node v.
 
floatstrokeWidth (node v)
 Returns the stroke width of node v.
 
FillPattern fillPattern (node v) const
 Returns the fill pattern of node v.
 
FillPatternfillPattern (node v)
 Returns the fill pattern of node v.
 
const ColorfillColor (node v) const
 Returns the fill color of node v.
 
ColorfillColor (node v)
 Returns the fill color of node v.
 
const ColorfillBgColor (node v) const
 Returns the background color of fill patterns for node v.
 
ColorfillBgColor (node v)
 Returns the background color of fill patterns for node v.
 
const string & label (node v) const
 Returns the label of node v.
 
string & label (node v)
 Returns the label of node v.
 
const string & templateNode (node v) const
 Returns the template name of node v.
 
string & templateNode (node v)
 Returns the template name of node v.
 
int weight (node v) const
 Returns the weight of node v.
 
intweight (node v)
 Returns the weight of node v.
 
Graph::NodeType type (node v) const
 Returns the type of node v.
 
Graph::NodeTypetype (node v)
 Returns the type of node v.
 
int idNode (node v) const
 Returns the user ID of node v.
 
intidNode (node v)
 Returns the user ID of node v.
 
Edge attributes
const DPolylinebends (edge e) const
 Returns the list of bend points of edge e.
 
DPolylinebends (edge e)
 Returns the list of bend points of edge e.
 
EdgeArrow arrowType (edge e) const
 Returns the arrow type of edge e.
 
EdgeArrowarrowType (edge e)
 Returns the arrow type of edge e.
 
StrokeType strokeType (edge e) const
 Returns the stroke type of edge e.
 
StrokeTypestrokeType (edge e)
 Returns the stroke type of edge e.
 
const ColorstrokeColor (edge e) const
 Returns the stroke color of edge e.
 
ColorstrokeColor (edge e)
 Returns the stroke color of edge e.
 
float strokeWidth (edge e) const
 Returns the stroke width of edge e.
 
floatstrokeWidth (edge e)
 Returns the stroke width of edge e.
 
const string & label (edge e) const
 Returns the label of edge e.
 
string & label (edge e)
 Returns the label of edge e.
 
int intWeight (edge e) const
 Returns the (integer) weight of edge e.
 
intintWeight (edge e)
 Returns the (integer) weight of edge e.
 
double doubleWeight (edge e) const
 Returns the (real number) weight of edge e.
 
doubledoubleWeight (edge e)
 Returns the (real number) weight of edge e.
 
Graph::EdgeType type (edge e) const
 Returns the type of edge e.
 
Graph::EdgeTypetype (edge e)
 Returns the type of edge e.
 
uint32_t subGraphBits (edge e) const
 Returns the edgesubgraph value of an edge e.
 
uint32_tsubGraphBits (edge e)
 Returns the edgesubgraph value of an edge e.
 
bool inSubGraph (edge e, int n) const
 Checks whether edge e belongs to basic graph n.
 
void addSubGraph (edge e, int n)
 Adds edge e to basic graph n.
 
void removeSubGraph (edge e, int n)
 Removes edge e from basic graph n.
 
Layout transformations
virtual void scale (double sx, double sy, bool scaleNodes=true)
 Scales the layout by (sx,sy).
 
virtual void scale (double s, bool scaleNodes=true)
 Scales the layout by s.
 
virtual void translate (double dx, double dy)
 Translates the layout by (dx,dy).
 
virtual void translateToNonNeg ()
 Translates the layout such that the lower left corner is at (0,0).
 
virtual void flipVertical ()
 Flips the layout vertically within its bounding box.
 
virtual void flipVertical (const DRect &box)
 Flips the (whole) layout vertically such that the part in box remains in this area.
 
virtual void flipHorizontal ()
 Flips the layout horizontally within its bounding box.
 
virtual void flipHorizontal (const DRect &box)
 Flips the (whole) layout horizontally such that the part in box remains in this area.
 
virtual void scaleAndTranslate (double sx, double sy, double dx, double dy, bool scaleNodes=true)
 Scales the layout by (sx,sy) and then translates it by (dx,dy).
 
virtual void scaleAndTranslate (double s, double dx, double dy, bool scaleNodes=true)
 Scales the layout by s and then translates it by (dx,dy).
 
virtual void rotateRight90 ()
 Rotates the layout by 90 degree (in clockwise direction) around the origin.
 
virtual void rotateLeft90 ()
 Rotates the layout by 90 degree (in counter-clockwise direction) around the origin.
 

Static Public Attributes

Flags for enabling attributes.
static const long nodeGraphics
 Corresponds to node attributes x(node), y(node), width(node), height(node), and shape(node).
 
static const long edgeGraphics
 Corresponds to edge attribute bends(edge).
 
static const long edgeIntWeight
 Corresponds to edge attribute intWeight(edge).
 
static const long edgeDoubleWeight
 Corresponds to edge attribute doubleWeight(edge).
 
static const long edgeLabel
 Corresponds to edge attribute label(edge).
 
static const long nodeLabel
 Corresponds to node attribute label(node).
 
static const long edgeType
 Corresponds to edge attribute type(edge).
 
static const long nodeType
 Corresponds to node attribute type(node).
 
static const long nodeId
 Corresponds to node attribute idNode(node).
 
static const long edgeArrow
 Corresponds to edge attribute arrowType(edge).
 
static const long edgeStyle
 Corresponds to edge attributes strokeColor(edge), strokeType(edge), and strokeWidth(edge).
 
static const long nodeStyle
 Corresponds to node attributes strokeColor(node), strokeType(node), strokeWidth(node), fillPattern(node), fillColor(node), and fillBgColor(node).
 
static const long nodeTemplate
 Corresponds to node attribute templateNode(node).
 
static const long edgeSubGraphs
 Corresponds to edge attributes modified by addSubGraph(edge, int), inSubGraph(edge, int) const, and removeSubGraph(edge, int).
 
static const long nodeWeight
 Corresponds to node attribute weight(node).
 
static const long threeD
 Corresponds to node attribute z(node). Note that all methods work on 2D coordinates only.
 
static const long nodeLabelPosition
 Corresponds to node attributes xLabel(node), yLabel(node), and zLabel(node).
 
static const long all
 Enables all available flags.
 

Protected Attributes

long m_attributes
 bit vector of currently used attributes
 
EdgeArray< DPolylinem_bends
 list of bend points of an edge
 
bool m_directed
 whether or not the graph is directed
 
EdgeArray< doublem_doubleWeight
 (real number) weight of an edge
 
EdgeArray< EdgeArrowm_edgeArrow
 arrow type of an edge
 
EdgeArray< string > m_edgeLabel
 label of an edge
 
EdgeArray< Strokem_edgeStroke
 stroke of an edge
 
EdgeArray< Graph::EdgeTypem_eType
 type of an edge (association or generalization)
 
NodeArray< doublem_height
 height of a nodes's bounding box
 
EdgeArray< intm_intWeight
 (integer) weight of an edge
 
NodeArray< Fillm_nodeFill
 fill of a node
 
NodeArray< intm_nodeId
 user ID of a node
 
NodeArray< intm_nodeIntWeight
 (integer) weight of a node
 
NodeArray< string > m_nodeLabel
 label of a node
 
NodeArray< doublem_nodeLabelPosX
 x-coordinate of a node label
 
NodeArray< doublem_nodeLabelPosY
 y-coordinate of a node label
 
NodeArray< doublem_nodeLabelPosZ
 z-coordinate of a node label
 
NodeArray< Shapem_nodeShape
 shape of a node
 
NodeArray< Strokem_nodeStroke
 stroke of a node
 
NodeArray< string > m_nodeTemplate
 name of template of a node
 
const Graphm_pGraph
 associated graph
 
EdgeArray< uint32_tm_subGraph
 is element of subgraphs given by bitvector
 
NodeArray< Graph::NodeTypem_vType
 type (vertex, dummy, generalizationMerger)
 
NodeArray< doublem_width
 width of a node's bounding box
 
NodeArray< doublem_x
 x-coordinate of a node
 
NodeArray< doublem_y
 y-coordinate of a node
 
NodeArray< doublem_z
 z-coordinate of a node
 

Private Member Functions

void copyEdgeAttributes (GraphAttributes &toAttr, edge eFrom, edge eTo, long attrs) const
 Copies all attributes attrs except bends (!) of eFrom to toAttr for eTo.
 
void copyNodeAttributes (GraphAttributes &toAttr, node vFrom, node vTo, long attrs) const
 Copies all attributes attrs of vFrom to toAttr for vTo.
 

Utility functions

template<typename T >
using NodeAttributeGetter = T(GraphAttributes::*)(node) const
 type of node attribute getter functions
 
template<typename T >
using EdgeAttributeGetter = T(GraphAttributes::*)(edge) const
 type of edge attribute getter functions
 
template<typename T >
bool isUniformForNodes (NodeAttributeGetter< T > attribute) const
 Checks whether a certain attribute has the same value for all nodes.
 
template<typename T >
bool isUniformForEdges (EdgeAttributeGetter< T > attribute) const
 Checks whether a certain attribute has the same value for all edges.
 
bool isUniform (long attributes) const
 Check whether all of the attributes associated with the bitflags in attributes (that are also enabled for this ogdf::GraphAttributes instance) are uniform, i.e.
 
DPoint point (node v) const
 Returns a DPoint corresponding to the x- and y-coordinates of v.
 
void transferToOriginal (GraphAttributes &origAttr) const
 Copies attributes of this to origAttr.
 
void transferToCopy (GraphAttributes &copyAttr) const
 Copies attributes of this to copyAttr.
 
virtual DRect boundingBox () const
 Returns the bounding box of the graph.
 
template<class Rectangle = DRect>
void nodeBoundingBoxes (NodeArray< Rectangle > &boundingBoxes) const
 Computes the bounding rectangle for each node.
 
void setAllWidth (double w)
 Sets the width of all nodes to w.
 
void setAllHeight (double h)
 Sets the height of all nodes to h.
 
void clearAllBends ()
 Removes all edge bends.
 
void removeUnnecessaryBendsHV ()
 Removes unnecessary bend points in orthogonal segements.
 
void addNodeCenter2Bends (int mode=1)
 Adds additional bend points to all edges for connecting their endpoints.
 
bool isAssociationClass (node v) const
 Returns true iff v represents an association class.
 
int hierarchyList (List< List< node > * > &list) const
 Returns a list of all inheritance hierarchies in the graph.
 
int hierarchyList (List< List< edge > * > &list) const
 Returns a list of all inheritance hierarchies in the graph.
 

Detailed Description

Stores additional attributes of a graph (like layout information).

It is frequently necessary to associate additional attributes with a graph. The class GraphAttributes provides various such attributes and is the central place were such attributes are stored.

Attributes are simply stored in node or edge arrays; for memory consumption reasons, only a subset of these arrays is in fact initialized for the graph; non-initialized arrays require only a few bytes of extra memory.

Which arrays are initialized is specified by a bit vector; each bit in this bit vector corresponds to one or more attributes. See the available flags for a detailed description.

Attributes can be enabled/disabled by the constructor GraphAttributes(const Graph &,long), the re-initialization procedure init, addAttributes, and destroyAttributes.

Definition at line 66 of file GraphAttributes.h.

Member Typedef Documentation

◆ EdgeAttributeGetter

template<typename T >
using ogdf::GraphAttributes::EdgeAttributeGetter = T (GraphAttributes::*)(edge) const

type of edge attribute getter functions

Definition at line 988 of file GraphAttributes.h.

◆ NodeAttributeGetter

template<typename T >
using ogdf::GraphAttributes::NodeAttributeGetter = T (GraphAttributes::*)(node) const

type of node attribute getter functions

Definition at line 984 of file GraphAttributes.h.

Constructor & Destructor Documentation

◆ GraphAttributes() [1/3]

ogdf::GraphAttributes::GraphAttributes ( )

Constructs graph attributes for no associated graph (default constructor).

The associated graph can be set later with the init() function.

◆ GraphAttributes() [2/3]

ogdf::GraphAttributes::GraphAttributes ( const Graph G,
long  attr = nodeGraphics|edgeGraphics 
)
explicit

Constructs graph attributes associated with the graph G.

Parameters
Gis the associated graph.
attrspecifies the set of attributes that can be accessed.

◆ GraphAttributes() [3/3]

ogdf::GraphAttributes::GraphAttributes ( const GraphAttributes )
default

Copy constructor.

◆ ~GraphAttributes()

virtual ogdf::GraphAttributes::~GraphAttributes ( )
inlinevirtual

Definition at line 194 of file GraphAttributes.h.

Member Function Documentation

◆ addAttributes()

void ogdf::GraphAttributes::addAttributes ( long  attr)

Enables attributes specified by attr and allocates required memory.

◆ addNodeCenter2Bends()

void ogdf::GraphAttributes::addNodeCenter2Bends ( int  mode = 1)

Adds additional bend points to all edges for connecting their endpoints.

According to mode switch add either the node center points to the bends or the anchor point on the node boundary

  • mode = 0: only add node center
  • mode = 1: compute intersection with the line segment to the center and the boundary of the rectangular node
  • mode = 2: compute intersection with the first/last line segment and the boundary of the rectangular node
Precondition
nodeGraphics and edgeGraphics is enabled

◆ addSubGraph()

void ogdf::GraphAttributes::addSubGraph ( edge  e,
int  n 
)
inline

Adds edge e to basic graph n.

Precondition
edgeSubGraphs is enabled

Definition at line 857 of file GraphAttributes.h.

◆ arrowType() [1/2]

EdgeArrow & ogdf::GraphAttributes::arrowType ( edge  e)
inline

Returns the arrow type of edge e.

Precondition
edgeArrow is enabled

Definition at line 693 of file GraphAttributes.h.

◆ arrowType() [2/2]

EdgeArrow ogdf::GraphAttributes::arrowType ( edge  e) const
inline

Returns the arrow type of edge e.

Precondition
edgeArrow is enabled

Definition at line 684 of file GraphAttributes.h.

◆ attributes()

long ogdf::GraphAttributes::attributes ( ) const
inline

Returns currently accessible attributes.

Definition at line 197 of file GraphAttributes.h.

◆ bends() [1/2]

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

Returns the list of bend points of edge e.

See also
bends(edge e) const
Precondition
edgeGraphics is enabled

Definition at line 675 of file GraphAttributes.h.

◆ bends() [2/2]

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

Returns the list of bend points of edge e.

Note that bend points should not be co-linear. This can always be achieved by calling DPolyline::normalize(). Similarly, bend points should never include the point of the edge's source or target node, even though the poly-line for the entire edge formally includes them.

Precondition
edgeGraphics is enabled

Definition at line 664 of file GraphAttributes.h.

◆ boundingBox()

virtual DRect ogdf::GraphAttributes::boundingBox ( ) const
virtual

Returns the bounding box of the graph.

Precondition
nodeGraphics and edgeGraphics is enabled

Reimplemented in ogdf::ClusterGraphAttributes.

◆ clearAllBends()

void ogdf::GraphAttributes::clearAllBends ( )

Removes all edge bends.

Precondition
edgeGraphics is enabled

◆ constGraph()

const Graph & ogdf::GraphAttributes::constGraph ( ) const
inline

Returns a reference to the associated graph.

Definition at line 223 of file GraphAttributes.h.

◆ copyEdgeAttributes()

void ogdf::GraphAttributes::copyEdgeAttributes ( GraphAttributes toAttr,
edge  eFrom,
edge  eTo,
long  attrs 
) const
private

Copies all attributes attrs except bends (!) of eFrom to toAttr for eTo.

◆ copyNodeAttributes()

void ogdf::GraphAttributes::copyNodeAttributes ( GraphAttributes toAttr,
node  vFrom,
node  vTo,
long  attrs 
) const
private

Copies all attributes attrs of vFrom to toAttr for vTo.

◆ destroyAttributes()

void ogdf::GraphAttributes::destroyAttributes ( long  attr)

Disables attributes specified by attr and releases available memory.

◆ directed() [1/2]

bool & ogdf::GraphAttributes::directed ( )
inline

Returns if the graph is directed.

Definition at line 235 of file GraphAttributes.h.

◆ directed() [2/2]

bool ogdf::GraphAttributes::directed ( ) const
inline

Returns if the graph is directed.

Definition at line 232 of file GraphAttributes.h.

◆ doubleWeight() [1/2]

double & ogdf::GraphAttributes::doubleWeight ( edge  e)
inline

Returns the (real number) weight of edge e.

Precondition
edgeDoubleWeight is enabled

Definition at line 801 of file GraphAttributes.h.

◆ doubleWeight() [2/2]

double ogdf::GraphAttributes::doubleWeight ( edge  e) const
inline

Returns the (real number) weight of edge e.

Precondition
edgeDoubleWeight is enabled

Definition at line 792 of file GraphAttributes.h.

◆ fillBgColor() [1/2]

Color & ogdf::GraphAttributes::fillBgColor ( node  v)
inline

Returns the background color of fill patterns for node v.

Precondition
nodeStyle is enabled

Definition at line 546 of file GraphAttributes.h.

◆ fillBgColor() [2/2]

const Color & ogdf::GraphAttributes::fillBgColor ( node  v) const
inline

Returns the background color of fill patterns for node v.

Precondition
nodeStyle is enabled

Definition at line 537 of file GraphAttributes.h.

◆ fillColor() [1/2]

Color & ogdf::GraphAttributes::fillColor ( node  v)
inline

Returns the fill color of node v.

Precondition
nodeStyle is enabled

Definition at line 528 of file GraphAttributes.h.

◆ fillColor() [2/2]

const Color & ogdf::GraphAttributes::fillColor ( node  v) const
inline

Returns the fill color of node v.

Precondition
nodeStyle is enabled

Definition at line 519 of file GraphAttributes.h.

◆ fillPattern() [1/2]

FillPattern & ogdf::GraphAttributes::fillPattern ( node  v)
inline

Returns the fill pattern of node v.

Precondition
nodeStyle is enabled

Definition at line 510 of file GraphAttributes.h.

◆ fillPattern() [2/2]

FillPattern ogdf::GraphAttributes::fillPattern ( node  v) const
inline

Returns the fill pattern of node v.

Precondition
nodeStyle is enabled

Definition at line 501 of file GraphAttributes.h.

◆ flipHorizontal() [1/2]

virtual void ogdf::GraphAttributes::flipHorizontal ( )
inlinevirtual

Flips the layout horizontally within its bounding box.

If preserving the bounding box is not required, the layout can also be flipped horizontally by calling scale(-1.0, 1.0, false).

Reimplemented in ogdf::ClusterGraphAttributes.

Definition at line 933 of file GraphAttributes.h.

◆ flipHorizontal() [2/2]

virtual void ogdf::GraphAttributes::flipHorizontal ( const DRect box)
virtual

Flips the (whole) layout horizontally such that the part in box remains in this area.

The whole layout is flipped and then moved such that the part that was in box before flipping is moved to this area.

Reimplemented in ogdf::ClusterGraphAttributes, and ogdf::ClusterGraphAttributes.

◆ flipVertical() [1/2]

virtual void ogdf::GraphAttributes::flipVertical ( )
inlinevirtual

Flips the layout vertically within its bounding box.

If preserving the bounding box is not required, the layout can also be flipped vertically by calling scale(1.0, -1.0, false).

Reimplemented in ogdf::ClusterGraphAttributes.

Definition at line 919 of file GraphAttributes.h.

◆ flipVertical() [2/2]

virtual void ogdf::GraphAttributes::flipVertical ( const DRect box)
virtual

Flips the (whole) layout vertically such that the part in box remains in this area.

The whole layout is flipped and then moved such that the part that was in box before flipping is moved to this area.

Reimplemented in ogdf::ClusterGraphAttributes, and ogdf::ClusterGraphAttributes.

◆ has()

bool ogdf::GraphAttributes::has ( long  attr) const
inline

Returns true iff all attributes in attr are available.

Definition at line 200 of file GraphAttributes.h.

◆ height() [1/4]

NodeArray< double > & ogdf::GraphAttributes::height ( )
inline

Returns a reference to the node array m_height.

Precondition
nodeGraphics is enabled

Definition at line 420 of file GraphAttributes.h.

◆ height() [2/4]

const NodeArray< double > & ogdf::GraphAttributes::height ( ) const
inline

Returns a reference to the node array m_height.

Precondition
nodeGraphics is enabled

Definition at line 411 of file GraphAttributes.h.

◆ height() [3/4]

double & ogdf::GraphAttributes::height ( node  v)
inline

Returns the height of the bounding box of node v.

Precondition
nodeGraphics is enabled

Definition at line 402 of file GraphAttributes.h.

◆ height() [4/4]

double ogdf::GraphAttributes::height ( node  v) const
inline

Returns the height of the bounding box of node v.

Precondition
nodeGraphics is enabled

Definition at line 393 of file GraphAttributes.h.

◆ hierarchyList() [1/2]

int ogdf::GraphAttributes::hierarchyList ( List< List< edge > * > &  list) const

Returns a list of all inheritance hierarchies in the graph.

Inheritance hierarchies are identified by edges with type Graph::generalization.

Parameters
listis a list of all hierarchies; each hierarchy is itself a list of all edges in this hierarchy.
Returns
Returns the number of generalization hierarchies.

◆ hierarchyList() [2/2]

int ogdf::GraphAttributes::hierarchyList ( List< List< node > * > &  list) const

Returns a list of all inheritance hierarchies in the graph.

Inheritance hierarchies are identified by edges with type Graph::generalization.

Parameters
listis a list of all hierarchies; each hierarchy is itself a list of all nodes in this hierarchy.
Returns
Returns the number of generalization hierarchies.

◆ idNode() [1/2]

int & ogdf::GraphAttributes::idNode ( node  v)
inline

Returns the user ID of node v.

If no user ID is set, returns the original index of the node instead.

Precondition
nodeId is enabled

Definition at line 640 of file GraphAttributes.h.

◆ idNode() [2/2]

int ogdf::GraphAttributes::idNode ( node  v) const
inline

Returns the user ID of node v.

If no user ID is set, returns the original index of the node instead.

Precondition
nodeId is enabled

Definition at line 629 of file GraphAttributes.h.

◆ init() [1/2]

virtual void ogdf::GraphAttributes::init ( const Graph G,
long  attr 
)
virtual

Initializes the graph attributes for graph G.

Parameters
Gis the new associated graph.
attrspecifies the set of attributes that can be accessed.
Warning
All attributes that were allocated before are destroyed by this function! If you wish to extend the set of allocated attributes, use addAttributes.

Reimplemented in ogdf::ClusterGraphAttributes, and ogdf::UMLGraph.

◆ init() [2/2]

void ogdf::GraphAttributes::init ( long  attr)

Re-initializes the graph attributes while maintaining the associated graph.

See also
init(const Graph&, long)

◆ inSubGraph()

bool ogdf::GraphAttributes::inSubGraph ( edge  e,
int  n 
) const
inline

Checks whether edge e belongs to basic graph n.

Precondition
edgeSubGraphs is enabled

Definition at line 846 of file GraphAttributes.h.

◆ intWeight() [1/2]

int & ogdf::GraphAttributes::intWeight ( edge  e)
inline

Returns the (integer) weight of edge e.

Precondition
edgeIntWeight is enabled

Definition at line 783 of file GraphAttributes.h.

◆ intWeight() [2/2]

int ogdf::GraphAttributes::intWeight ( edge  e) const
inline

Returns the (integer) weight of edge e.

Precondition
edgeIntWeight is enabled

Definition at line 774 of file GraphAttributes.h.

◆ isAssociationClass()

bool ogdf::GraphAttributes::isAssociationClass ( node  v) const
inline

Returns true iff v represents an association class.

We hide the internal representation of semantic node types from the user to be able to change this later (semantic node type member array). We are not allowed to set association classes manually, only by calling createAssociationClass().

Precondition
nodeGraphics are enabled

Definition at line 1158 of file GraphAttributes.h.

◆ isUniform()

bool ogdf::GraphAttributes::isUniform ( long  attributes) const

Check whether all of the attributes associated with the bitflags in attributes (that are also enabled for this ogdf::GraphAttributes instance) are uniform, i.e.

have the same value.

Parameters
attributesbitmask for all attribute flags to query
Returns
true iff the associated attributes of all enabled flags in attributes are uniform

◆ isUniformForEdges()

template<typename T >
bool ogdf::GraphAttributes::isUniformForEdges ( EdgeAttributeGetter< T >  attribute) const
inline

Checks whether a certain attribute has the same value for all edges.

Precondition
The necessary attribute flag is enabled.
Template Parameters
Treturn type of the attribute getter function
Parameters
attributeedge attribute getter function
Returns
true iff the specified attribute has the same value for all edges

Definition at line 1023 of file GraphAttributes.h.

◆ isUniformForNodes()

template<typename T >
bool ogdf::GraphAttributes::isUniformForNodes ( NodeAttributeGetter< T >  attribute) const
inline

Checks whether a certain attribute has the same value for all nodes.

Precondition
The necessary attribute flag is enabled.
Template Parameters
Treturn type of the attribute getter function
Parameters
attributenode attribute getter function
Returns
true iff the specified attribute has the same value for all nodes

Definition at line 999 of file GraphAttributes.h.

◆ label() [1/4]

string & ogdf::GraphAttributes::label ( edge  e)
inline

Returns the label of edge e.

Precondition
edgeLabel is enabled

Definition at line 765 of file GraphAttributes.h.

◆ label() [2/4]

const string & ogdf::GraphAttributes::label ( edge  e) const
inline

Returns the label of edge e.

Precondition
edgeLabel is enabled

Definition at line 756 of file GraphAttributes.h.

◆ label() [3/4]

string & ogdf::GraphAttributes::label ( node  v)
inline

Returns the label of node v.

Precondition
nodeLabel is enabled

Definition at line 564 of file GraphAttributes.h.

◆ label() [4/4]

const string & ogdf::GraphAttributes::label ( node  v) const
inline

Returns the label of node v.

Precondition
nodeLabel is enabled

Definition at line 555 of file GraphAttributes.h.

◆ nodeBoundingBoxes()

template<class Rectangle = DRect>
void ogdf::GraphAttributes::nodeBoundingBoxes ( NodeArray< Rectangle > &  boundingBoxes) const
inline

Computes the bounding rectangle for each node.

Template Parameters
Rectangleis the kind of rectangle that should be created.
Parameters
boundingBoxesis assigned the bounding rectangle for each node.
Precondition
nodeGraphics is enabled

Definition at line 1096 of file GraphAttributes.h.

◆ operator=()

GraphAttributes & ogdf::GraphAttributes::operator= ( const GraphAttributes )
default

Copy assignment operator.

◆ point()

DPoint ogdf::GraphAttributes::point ( node  v) const
inline

Returns a DPoint corresponding to the x- and y-coordinates of v.

Definition at line 1050 of file GraphAttributes.h.

◆ removeSubGraph()

void ogdf::GraphAttributes::removeSubGraph ( edge  e,
int  n 
)
inline

Removes edge e from basic graph n.

Precondition
edgeSubGraphs is enabled

Definition at line 868 of file GraphAttributes.h.

◆ removeUnnecessaryBendsHV()

void ogdf::GraphAttributes::removeUnnecessaryBendsHV ( )

Removes unnecessary bend points in orthogonal segements.

Processes all edges and removes unnecessary bend points in the bend point list of the edge, i.e., bend points such that the preceding and succeeding bend point form a horizontal or vertical segement containing this bend point. This function is useful to remove redundant bend points in an orthogonal layout.

Precondition
edgeGraphics is enabled

◆ rotateLeft90()

virtual void ogdf::GraphAttributes::rotateLeft90 ( )
virtual

Rotates the layout by 90 degree (in counter-clockwise direction) around the origin.

◆ rotateRight90()

virtual void ogdf::GraphAttributes::rotateRight90 ( )
virtual

Rotates the layout by 90 degree (in clockwise direction) around the origin.

◆ scale() [1/2]

virtual void ogdf::GraphAttributes::scale ( double  s,
bool  scaleNodes = true 
)
inlinevirtual

Scales the layout by s.

If scaleNodes is true, node sizes are scaled as well.

Parameters
sis the scaling factor for both x- and y-coordinates.
scaleNodesdetermines if nodes size are scaled as well (true) or not.
Precondition
nodeGraphics and edgeGraphics are enabled

Reimplemented in ogdf::ClusterGraphAttributes.

Definition at line 902 of file GraphAttributes.h.

◆ scale() [2/2]

virtual void ogdf::GraphAttributes::scale ( double  sx,
double  sy,
bool  scaleNodes = true 
)
virtual

Scales the layout by (sx,sy).

If scaleNodes is true, node sizes are scaled as well.

Parameters
sxis the scaling factor for x-coordinates.
syis the scaling factor for y-coordinates.
scaleNodesdetermines if nodes size are scaled as well (true) or not.
Precondition
nodeGraphics and edgeGraphics are enabled

Reimplemented in ogdf::ClusterGraphAttributes, and ogdf::ClusterGraphAttributes.

◆ scaleAndTranslate() [1/2]

virtual void ogdf::GraphAttributes::scaleAndTranslate ( double  s,
double  dx,
double  dy,
bool  scaleNodes = true 
)
inlinevirtual

Scales the layout by s and then translates it by (dx,dy).

If scaleNodes is true, node sizes are scaled as well. A point (x,y) is moved to (sx + dx, sy + dy).

Parameters
sis the scaling factor for both x- and y-coordinates.
dxis the translation in x-direction.
dyis the translation in y-direction.
scaleNodesdetermines if nodes size are scaled as well (true) or not.

Definition at line 966 of file GraphAttributes.h.

◆ scaleAndTranslate() [2/2]

virtual void ogdf::GraphAttributes::scaleAndTranslate ( double  sx,
double  sy,
double  dx,
double  dy,
bool  scaleNodes = true 
)
virtual

Scales the layout by (sx,sy) and then translates it by (dx,dy).

If scaleNodes is true, node sizes are scaled as well. A point (x,y) is moved to (sxx + dx, syy + dy).

Parameters
sxis the scaling factor for x-coordinates.
syis the scaling factor for y-coordinates.
dxis the translation in x-direction.
dyis the translation in y-direction.
scaleNodesdetermines if nodes size are scaled as well (true) or not.

◆ setAllHeight()

void ogdf::GraphAttributes::setAllHeight ( double  h)

Sets the height of all nodes to h.

Precondition
nodeGraphics is enabled

◆ setAllWidth()

void ogdf::GraphAttributes::setAllWidth ( double  w)

Sets the width of all nodes to w.

Precondition
nodeGraphics is enabled

◆ shape() [1/2]

Shape & ogdf::GraphAttributes::shape ( node  v)
inline

Returns the shape type of node v.

Precondition
nodeGraphics is enabled

Definition at line 438 of file GraphAttributes.h.

◆ shape() [2/2]

Shape ogdf::GraphAttributes::shape ( node  v) const
inline

Returns the shape type of node v.

Precondition
nodeGraphics is enabled

Definition at line 429 of file GraphAttributes.h.

◆ strokeColor() [1/4]

Color & ogdf::GraphAttributes::strokeColor ( edge  e)
inline

Returns the stroke color of edge e.

Precondition
edgeStyle is enabled

Definition at line 729 of file GraphAttributes.h.

◆ strokeColor() [2/4]

const Color & ogdf::GraphAttributes::strokeColor ( edge  e) const
inline

Returns the stroke color of edge e.

Precondition
edgeStyle is enabled

Definition at line 720 of file GraphAttributes.h.

◆ strokeColor() [3/4]

Color & ogdf::GraphAttributes::strokeColor ( node  v)
inline

Returns the stroke color of node v.

Precondition
nodeStyle is enabled

Definition at line 474 of file GraphAttributes.h.

◆ strokeColor() [4/4]

const Color & ogdf::GraphAttributes::strokeColor ( node  v) const
inline

Returns the stroke color of node v.

Precondition
nodeStyle is enabled

Definition at line 465 of file GraphAttributes.h.

◆ strokeType() [1/4]

StrokeType & ogdf::GraphAttributes::strokeType ( edge  e)
inline

Returns the stroke type of edge e.

Precondition
edgeStyle is enabled

Definition at line 711 of file GraphAttributes.h.

◆ strokeType() [2/4]

StrokeType ogdf::GraphAttributes::strokeType ( edge  e) const
inline

Returns the stroke type of edge e.

Precondition
edgeStyle is enabled

Definition at line 702 of file GraphAttributes.h.

◆ strokeType() [3/4]

StrokeType & ogdf::GraphAttributes::strokeType ( node  v)
inline

Returns the stroke type of node v.

Precondition
nodeStyle is enabled

Definition at line 456 of file GraphAttributes.h.

◆ strokeType() [4/4]

StrokeType ogdf::GraphAttributes::strokeType ( node  v) const
inline

Returns the stroke type of node v.

Precondition
nodeStyle is enabled

Definition at line 447 of file GraphAttributes.h.

◆ strokeWidth() [1/4]

float & ogdf::GraphAttributes::strokeWidth ( edge  e)
inline

Returns the stroke width of edge e.

Precondition
edgeStyle is enabled

Definition at line 747 of file GraphAttributes.h.

◆ strokeWidth() [2/4]

float ogdf::GraphAttributes::strokeWidth ( edge  e) const
inline

Returns the stroke width of edge e.

Precondition
edgeStyle is enabled

Definition at line 738 of file GraphAttributes.h.

◆ strokeWidth() [3/4]

float & ogdf::GraphAttributes::strokeWidth ( node  v)
inline

Returns the stroke width of node v.

Precondition
nodeStyle is enabled

Definition at line 492 of file GraphAttributes.h.

◆ strokeWidth() [4/4]

float ogdf::GraphAttributes::strokeWidth ( node  v) const
inline

Returns the stroke width of node v.

Precondition
nodeStyle is enabled

Definition at line 483 of file GraphAttributes.h.

◆ subGraphBits() [1/2]

uint32_t & ogdf::GraphAttributes::subGraphBits ( edge  e)
inline

Returns the edgesubgraph value of an edge e.

Precondition
edgeSubGraphs is enabled

Definition at line 837 of file GraphAttributes.h.

◆ subGraphBits() [2/2]

uint32_t ogdf::GraphAttributes::subGraphBits ( edge  e) const
inline

Returns the edgesubgraph value of an edge e.

Precondition
edgeSubGraphs is enabled

Definition at line 828 of file GraphAttributes.h.

◆ templateNode() [1/2]

string & ogdf::GraphAttributes::templateNode ( node  v)
inline

Returns the template name of node v.

Precondition
nodeTemplate is enabled

Definition at line 582 of file GraphAttributes.h.

◆ templateNode() [2/2]

const string & ogdf::GraphAttributes::templateNode ( node  v) const
inline

Returns the template name of node v.

Precondition
nodeTemplate is enabled

Definition at line 573 of file GraphAttributes.h.

◆ transferToCopy()

void ogdf::GraphAttributes::transferToCopy ( GraphAttributes copyAttr) const

Copies attributes of this to copyAttr.

Only attributes which are enabled in both this and copyAttr are copied. The edges of copyAttr get attributes associated with the respective original edge. Bend points, however, are only transferred to the first edge in the chain of copy edges. Bend points of all other copy edges in the chain are cleared.

Precondition
copyAttr is associated with a GraphCopy, which is a copy of the graph that this GraphAttributes is associated with.
Parameters
copyAttris the GraphAttributes of the GraphCopy.

◆ transferToOriginal()

void ogdf::GraphAttributes::transferToOriginal ( GraphAttributes origAttr) const

Copies attributes of this to origAttr.

Only attributes which are enabled in both this and origAttr are copied. The edges of origAttr get attributes associated with the respective first edge in the chain of copy edges. Both dummy nodes and bends between dummy nodes are added as bends to origAttr.

Precondition
This GraphAttributes is associated with a GraphCopy, which is a copy of the graph that origAttr is associated with.
Parameters
origAttris the GraphAttributes of the original graph.

◆ translate()

virtual void ogdf::GraphAttributes::translate ( double  dx,
double  dy 
)
virtual

Translates the layout by (dx,dy).

Parameters
dxis the translation in x-direction.
dyis the translation in y-direction.

Reimplemented in ogdf::ClusterGraphAttributes.

◆ translateToNonNeg()

virtual void ogdf::GraphAttributes::translateToNonNeg ( )
virtual

Translates the layout such that the lower left corner is at (0,0).

◆ type() [1/4]

Graph::EdgeType & ogdf::GraphAttributes::type ( edge  e)
inline

Returns the type of edge e.

Precondition
edgeType is enabled

Definition at line 819 of file GraphAttributes.h.

◆ type() [2/4]

Graph::EdgeType ogdf::GraphAttributes::type ( edge  e) const
inline

Returns the type of edge e.

Precondition
edgeType is enabled

Definition at line 810 of file GraphAttributes.h.

◆ type() [3/4]

Graph::NodeType & ogdf::GraphAttributes::type ( node  v)
inline

Returns the type of node v.

Precondition
nodeType is enabled

Definition at line 618 of file GraphAttributes.h.

◆ type() [4/4]

Graph::NodeType ogdf::GraphAttributes::type ( node  v) const
inline

Returns the type of node v.

Precondition
nodeType is enabled

Definition at line 609 of file GraphAttributes.h.

◆ weight() [1/2]

int & ogdf::GraphAttributes::weight ( node  v)
inline

Returns the weight of node v.

Precondition
nodeWeight is enabled

Definition at line 600 of file GraphAttributes.h.

◆ weight() [2/2]

int ogdf::GraphAttributes::weight ( node  v) const
inline

Returns the weight of node v.

Precondition
nodeWeight is enabled

Definition at line 591 of file GraphAttributes.h.

◆ width() [1/4]

NodeArray< double > & ogdf::GraphAttributes::width ( )
inline

Returns a reference to the node array #m_width.

Precondition
nodeGraphics is enabled

Definition at line 384 of file GraphAttributes.h.

◆ width() [2/4]

const NodeArray< double > & ogdf::GraphAttributes::width ( ) const
inline

Returns a reference to the node array m_width.

Precondition
nodeGraphics is enabled

Definition at line 375 of file GraphAttributes.h.

◆ width() [3/4]

double & ogdf::GraphAttributes::width ( node  v)
inline

Returns the width of the bounding box of node v.

Precondition
nodeGraphics is enabled

Definition at line 366 of file GraphAttributes.h.

◆ width() [4/4]

double ogdf::GraphAttributes::width ( node  v) const
inline

Returns the width of the bounding box of node v.

Precondition
nodeGraphics is enabled

Definition at line 357 of file GraphAttributes.h.

◆ x() [1/2]

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

Returns the x-coordinate of node v.

Precondition
nodeGraphics is enabled

Definition at line 256 of file GraphAttributes.h.

◆ x() [2/2]

double ogdf::GraphAttributes::x ( node  v) const
inline

Returns the x-coordinate of node v.

Precondition
nodeGraphics is enabled

Definition at line 247 of file GraphAttributes.h.

◆ xLabel() [1/2]

double & ogdf::GraphAttributes::xLabel ( node  v)
inline

Returns the label x-coordinate of node v.

Precondition
nodeLabelPosition is enabled

Definition at line 310 of file GraphAttributes.h.

◆ xLabel() [2/2]

double ogdf::GraphAttributes::xLabel ( node  v) const
inline

Returns the label x-coordinate of node v.

Precondition
nodeLabelPosition is enabled

Definition at line 301 of file GraphAttributes.h.

◆ y() [1/2]

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

Returns the y-coordinate of node v.

Precondition
nodeGraphics is enabled

Definition at line 274 of file GraphAttributes.h.

◆ y() [2/2]

double ogdf::GraphAttributes::y ( node  v) const
inline

Returns the y-coordinate of node v.

Precondition
nodeGraphics is enabled

Definition at line 265 of file GraphAttributes.h.

◆ yLabel() [1/2]

double & ogdf::GraphAttributes::yLabel ( node  v)
inline

Returns the label y-coordinate of node v.

Precondition
nodeLabelPosition is enabled

Definition at line 328 of file GraphAttributes.h.

◆ yLabel() [2/2]

double ogdf::GraphAttributes::yLabel ( node  v) const
inline

Returns the label y-coordinate of node v.

Precondition
nodeLabelPosition is enabled

Definition at line 319 of file GraphAttributes.h.

◆ z() [1/2]

double & ogdf::GraphAttributes::z ( node  v)
inline

Returns the z-coordinate of node v.

Precondition
threeD is enabled

Definition at line 292 of file GraphAttributes.h.

◆ z() [2/2]

double ogdf::GraphAttributes::z ( node  v) const
inline

Returns the z-coordinate of node v.

Precondition
threeD is enabled

Definition at line 283 of file GraphAttributes.h.

◆ zLabel() [1/2]

double & ogdf::GraphAttributes::zLabel ( node  v)
inline

Returns the label z-coordinate of node v.

Precondition
nodeLabelPosition and threeD are enabled

Definition at line 347 of file GraphAttributes.h.

◆ zLabel() [2/2]

double ogdf::GraphAttributes::zLabel ( node  v) const
inline

Returns the label z-coordinate of node v.

Precondition
nodeLabelPosition and threeD are enabled

Definition at line 337 of file GraphAttributes.h.

Member Data Documentation

◆ all

const long ogdf::GraphAttributes::all
static

Enables all available flags.

Definition at line 166 of file GraphAttributes.h.

◆ edgeArrow

const long ogdf::GraphAttributes::edgeArrow
static

Corresponds to edge attribute arrowType(edge).

Definition at line 140 of file GraphAttributes.h.

◆ edgeDoubleWeight

const long ogdf::GraphAttributes::edgeDoubleWeight
static

Corresponds to edge attribute doubleWeight(edge).

Definition at line 122 of file GraphAttributes.h.

◆ edgeGraphics

const long ogdf::GraphAttributes::edgeGraphics
static

Corresponds to edge attribute bends(edge).

Definition at line 116 of file GraphAttributes.h.

◆ edgeIntWeight

const long ogdf::GraphAttributes::edgeIntWeight
static

Corresponds to edge attribute intWeight(edge).

Definition at line 119 of file GraphAttributes.h.

◆ edgeLabel

const long ogdf::GraphAttributes::edgeLabel
static

Corresponds to edge attribute label(edge).

Definition at line 125 of file GraphAttributes.h.

◆ edgeStyle

const long ogdf::GraphAttributes::edgeStyle
static

Corresponds to edge attributes strokeColor(edge), strokeType(edge), and strokeWidth(edge).

Definition at line 143 of file GraphAttributes.h.

◆ edgeSubGraphs

const long ogdf::GraphAttributes::edgeSubGraphs
static

Corresponds to edge attributes modified by addSubGraph(edge, int), inSubGraph(edge, int) const, and removeSubGraph(edge, int).

Definition at line 154 of file GraphAttributes.h.

◆ edgeType

const long ogdf::GraphAttributes::edgeType
static

Corresponds to edge attribute type(edge).

Definition at line 131 of file GraphAttributes.h.

◆ m_attributes

long ogdf::GraphAttributes::m_attributes
protected

bit vector of currently used attributes

Definition at line 104 of file GraphAttributes.h.

◆ m_bends

EdgeArray<DPolyline> ogdf::GraphAttributes::m_bends
protected

list of bend points of an edge

Definition at line 93 of file GraphAttributes.h.

◆ m_directed

bool ogdf::GraphAttributes::m_directed
protected

whether or not the graph is directed

Definition at line 70 of file GraphAttributes.h.

◆ m_doubleWeight

EdgeArray<double> ogdf::GraphAttributes::m_doubleWeight
protected

(real number) weight of an edge

Definition at line 100 of file GraphAttributes.h.

◆ m_edgeArrow

EdgeArray<EdgeArrow> ogdf::GraphAttributes::m_edgeArrow
protected

arrow type of an edge

Definition at line 95 of file GraphAttributes.h.

◆ m_edgeLabel

EdgeArray<string> ogdf::GraphAttributes::m_edgeLabel
protected

label of an edge

Definition at line 94 of file GraphAttributes.h.

◆ m_edgeStroke

EdgeArray<Stroke> ogdf::GraphAttributes::m_edgeStroke
protected

stroke of an edge

Definition at line 96 of file GraphAttributes.h.

◆ m_eType

EdgeArray<Graph::EdgeType> ogdf::GraphAttributes::m_eType
protected

type of an edge (association or generalization)

Definition at line 101 of file GraphAttributes.h.

◆ m_height

NodeArray<double> ogdf::GraphAttributes::m_height
protected

height of a nodes's bounding box

Definition at line 80 of file GraphAttributes.h.

◆ m_intWeight

EdgeArray<int> ogdf::GraphAttributes::m_intWeight
protected

(integer) weight of an edge

Definition at line 99 of file GraphAttributes.h.

◆ m_nodeFill

NodeArray<Fill> ogdf::GraphAttributes::m_nodeFill
protected

fill of a node

Definition at line 84 of file GraphAttributes.h.

◆ m_nodeId

NodeArray<int> ogdf::GraphAttributes::m_nodeId
protected

user ID of a node

Definition at line 88 of file GraphAttributes.h.

◆ m_nodeIntWeight

NodeArray<int> ogdf::GraphAttributes::m_nodeIntWeight
protected

(integer) weight of a node

Definition at line 89 of file GraphAttributes.h.

◆ m_nodeLabel

NodeArray<string> ogdf::GraphAttributes::m_nodeLabel
protected

label of a node

Definition at line 82 of file GraphAttributes.h.

◆ m_nodeLabelPosX

NodeArray<double> ogdf::GraphAttributes::m_nodeLabelPosX
protected

x-coordinate of a node label

Definition at line 76 of file GraphAttributes.h.

◆ m_nodeLabelPosY

NodeArray<double> ogdf::GraphAttributes::m_nodeLabelPosY
protected

y-coordinate of a node label

Definition at line 77 of file GraphAttributes.h.

◆ m_nodeLabelPosZ

NodeArray<double> ogdf::GraphAttributes::m_nodeLabelPosZ
protected

z-coordinate of a node label

Definition at line 78 of file GraphAttributes.h.

◆ m_nodeShape

NodeArray<Shape> ogdf::GraphAttributes::m_nodeShape
protected

shape of a node

Definition at line 81 of file GraphAttributes.h.

◆ m_nodeStroke

NodeArray<Stroke> ogdf::GraphAttributes::m_nodeStroke
protected

stroke of a node

Definition at line 83 of file GraphAttributes.h.

◆ m_nodeTemplate

NodeArray<string> ogdf::GraphAttributes::m_nodeTemplate
protected

name of template of a node

Definition at line 85 of file GraphAttributes.h.

◆ m_pGraph

const Graph* ogdf::GraphAttributes::m_pGraph
protected

associated graph

Definition at line 68 of file GraphAttributes.h.

◆ m_subGraph

EdgeArray<uint32_t> ogdf::GraphAttributes::m_subGraph
protected

is element of subgraphs given by bitvector

Definition at line 102 of file GraphAttributes.h.

◆ m_vType

NodeArray<Graph::NodeType> ogdf::GraphAttributes::m_vType
protected

type (vertex, dummy, generalizationMerger)

Definition at line 90 of file GraphAttributes.h.

◆ m_width

NodeArray<double> ogdf::GraphAttributes::m_width
protected

width of a node's bounding box

Definition at line 79 of file GraphAttributes.h.

◆ m_x

NodeArray<double> ogdf::GraphAttributes::m_x
protected

x-coordinate of a node

Definition at line 73 of file GraphAttributes.h.

◆ m_y

NodeArray<double> ogdf::GraphAttributes::m_y
protected

y-coordinate of a node

Definition at line 74 of file GraphAttributes.h.

◆ m_z

NodeArray<double> ogdf::GraphAttributes::m_z
protected

z-coordinate of a node

Definition at line 75 of file GraphAttributes.h.

◆ nodeGraphics

const long ogdf::GraphAttributes::nodeGraphics
static

Corresponds to node attributes x(node), y(node), width(node), height(node), and shape(node).

Definition at line 113 of file GraphAttributes.h.

◆ nodeId

const long ogdf::GraphAttributes::nodeId
static

Corresponds to node attribute idNode(node).

Definition at line 137 of file GraphAttributes.h.

◆ nodeLabel

const long ogdf::GraphAttributes::nodeLabel
static

Corresponds to node attribute label(node).

Definition at line 128 of file GraphAttributes.h.

◆ nodeLabelPosition

const long ogdf::GraphAttributes::nodeLabelPosition
static

Corresponds to node attributes xLabel(node), yLabel(node), and zLabel(node).

Definition at line 163 of file GraphAttributes.h.

◆ nodeStyle

const long ogdf::GraphAttributes::nodeStyle
static

◆ nodeTemplate

const long ogdf::GraphAttributes::nodeTemplate
static

Corresponds to node attribute templateNode(node).

Definition at line 150 of file GraphAttributes.h.

◆ nodeType

const long ogdf::GraphAttributes::nodeType
static

Corresponds to node attribute type(node).

Definition at line 134 of file GraphAttributes.h.

◆ nodeWeight

const long ogdf::GraphAttributes::nodeWeight
static

Corresponds to node attribute weight(node).

Definition at line 157 of file GraphAttributes.h.

◆ threeD

const long ogdf::GraphAttributes::threeD
static

Corresponds to node attribute z(node). Note that all methods work on 2D coordinates only.

Definition at line 160 of file GraphAttributes.h.


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