|
Open Graph Drawing Framework |
v. 2023.09 (Elderberry)
|
|
|
Go to the documentation of this file.
45 class AugmentationModule;
48 class ShellingOrderModule;
122 bool isRedundant(
int x1,
int y1,
int x2,
int y2,
int x3,
int y3);
An array that keeps track of the number of inserted elements; also usable as an efficient stack.
GridLayout & m_gridLayout
The namespace for all OGDF objects.
Declaration and implementation of ArrayBuffer class.
Includes declaration of graph class.
Planarized representations (of a connected component) of a graph.
void assignIopCoords()
Computes the relative coordinates of the in- and outpoints, incl. height(v), depth(v).
void computeYCoords()
Computes the absolute y-coordinates y[v] of all nodes in the ordering.
void removeDeg1Nodes()
Removes degree-1 nodes and store informations for restoring them.
Base class for modules that compute a shelling order of a graph.
bool isDummy(node v) const
Returns true iff v has no corresponding node in the original graph.
void print(std::ostream &os, const InOutPoint &iop)
bool exists(adjEntry adj)
Representation of an in- or outpoint.
bool isRedundant(int x1, int y1, int x2, int y2, int x3, int y3)
Representation of in- and outpoint lists.
MixedModelBase & operator=(const MixedModelBase &)=delete
void placeNodes()
Implements the placement step. Computes x[v] and y[v].
void postprocessing1()
Tries to reduce the number of bends by changing the outpoints of nodes with indeg and outdeg 2.
Declaration of a base class for planar representations of graphs and cluster graphs.
void printInOutPoints(std::ostream &os)
Class for adjacency list elements.
Declaration of shelling order used by the Mixed-Model layout algorithm.
edge theEdge() const
Returns the edge associated with this adjacency entry.
virtual ~MixedModelBase()
MixedModelBase(PlanRep &PG, GridLayout &gridLayout)
ArrayBuffer< PlanRep::Deg1RestoreInfo > m_deg1RestoreStack
RegisteredArray for nodes, edges and adjEntries of a graph.
void firstPoint(int &x, int &y, adjEntry adj)
The base class for graph augmentation algorithms.
bool hasRight(int k) const
Determine if the kth set in the ordered partition has a "real" right vertex.
Declaration of classes InOutPoint and IOPoints which implement the management of in-/out-points.
NodeArray< ListConstIterator< InOutPoint > > m_nextRight
void postprocessing2()
Tries to reduce the number of bends by moving degree-2 nodes on bend points.
Base class for embedder algorithms.
void setBends()
Assigns polylines to edges of the original graph and computes the x- and y-coordinates of deg-1-nodes...
Declaration and implementation of Array class and Array algorithms.
Declaration of doubly linked lists and iterators.
Array< ListConstIterator< InOutPoint > > m_rightOp
Representation of a graph's grid layout.
Array< ListConstIterator< InOutPoint > > m_leftOp
void computeOrder(AugmentationModule &augmenter, EmbedderModule *pEmbedder, adjEntry adjExternal, ShellingOrderModule &compOrder)
Computes the ordered partition (incl. m_leftOp[k], em_rightOp[k]) and constructs the in- and outpoint...
void printMMOrder(std::ostream &os)
Functions for debugging output.
NodeArray< ListConstIterator< InOutPoint > > m_nextLeft
void printNodeCoords(std::ostream &os)
void computeXCoords()
Computes the absolute x-coordinates x[v] of all nodes in the ordering, furthermore dyla[k] and dyra[k...
bool hasLeft(int k) const
Determine if the kth set in the ordered partition has a "real" left vertex.