#include <ogdf/planarlayout/mixed_model_layout/MixedModelBase.h>
Public Member Functions | |
MixedModelBase (PlanRep &PG, GridLayout &gridLayout) | |
virtual | ~MixedModelBase () |
void | assignIopCoords () |
Computes the relative coordinates of the in- and outpoints, incl. height(v), depth(v). | |
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 lists. | |
void | computeXCoords () |
Computes the absolute x-coordinates x[v] of all nodes in the ordering, furthermore dyla[k] and dyra[k] (used by compute_y_coordinates) | |
void | computeYCoords () |
Computes the absolute y-coordinates y[v] of all nodes in the ordering. | |
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. | |
void | postprocessing2 () |
Tries to reduce the number of bends by moving degree-2 nodes on bend points. | |
void | setBends () |
Assigns polylines to edges of the original graph and computes the x- and y-coordinates of deg-1-nodes not in the ordering. | |
void | printMMOrder (std::ostream &os) |
Functions for debugging output. | |
void | printInOutPoints (std::ostream &os) |
void | print (std::ostream &os, const InOutPoint &iop) |
void | printNodeCoords (std::ostream &os) |
Private Member Functions | |
bool | exists (adjEntry adj) |
void | firstPoint (int &x, int &y, adjEntry adj) |
bool | hasLeft (int k) const |
Determine if the kth set in the ordered partition has a "real" left vertex. | |
bool | hasRight (int k) const |
Determine if the kth set in the ordered partition has a "real" right vertex. | |
bool | isRedundant (int x1, int y1, int x2, int y2, int x3, int y3) |
void | removeDeg1Nodes () |
Removes degree-1 nodes and store informations for restoring them. | |
Private Attributes | |
ArrayBuffer< PlanRep::Deg1RestoreInfo > | m_deg1RestoreStack |
NodeArray< int > | m_dxla |
NodeArray< int > | m_dxra |
Array< int > | m_dyl |
Array< int > | m_dyr |
GridLayout & | m_gridLayout |
IOPoints | m_iops |
Array< ListConstIterator< InOutPoint > > | m_leftOp |
MMOrder | m_mmo |
NodeArray< ListConstIterator< InOutPoint > > | m_nextLeft |
NodeArray< ListConstIterator< InOutPoint > > | m_nextRight |
PlanRep & | m_PG |
Array< ListConstIterator< InOutPoint > > | m_rightOp |
Definition at line 44 of file MixedModelBase.h.
|
inline |
Definition at line 46 of file MixedModelBase.h.
|
inlinevirtual |
Definition at line 49 of file MixedModelBase.h.
void ogdf::MixedModelBase::assignIopCoords | ( | ) |
Computes the relative coordinates of the in- and outpoints, incl. height(v), depth(v).
void ogdf::MixedModelBase::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 lists.
void ogdf::MixedModelBase::computeXCoords | ( | ) |
Computes the absolute x-coordinates x[v] of all nodes in the ordering, furthermore dyla[k] and dyra[k] (used by compute_y_coordinates)
void ogdf::MixedModelBase::computeYCoords | ( | ) |
Computes the absolute y-coordinates y[v] of all nodes in the ordering.
Definition at line 104 of file MixedModelBase.h.
Determine if the kth set in the ordered partition has a "real" left vertex.
Determine if the kth set in the ordered partition has a "real" right vertex.
|
delete |
void ogdf::MixedModelBase::placeNodes | ( | ) |
Implements the placement step. Computes x[v] and y[v].
void ogdf::MixedModelBase::postprocessing1 | ( | ) |
Tries to reduce the number of bends by changing the outpoints of nodes with indeg and outdeg 2.
void ogdf::MixedModelBase::postprocessing2 | ( | ) |
Tries to reduce the number of bends by moving degree-2 nodes on bend points.
void ogdf::MixedModelBase::print | ( | std::ostream & | os, |
const InOutPoint & | iop | ||
) |
void ogdf::MixedModelBase::printInOutPoints | ( | std::ostream & | os | ) |
void ogdf::MixedModelBase::printMMOrder | ( | std::ostream & | os | ) |
Functions for debugging output.
void ogdf::MixedModelBase::printNodeCoords | ( | std::ostream & | os | ) |
|
private |
Removes degree-1 nodes and store informations for restoring them.
void ogdf::MixedModelBase::setBends | ( | ) |
Assigns polylines to edges of the original graph and computes the x- and y-coordinates of deg-1-nodes not in the ordering.
|
private |
Definition at line 97 of file MixedModelBase.h.
Definition at line 102 of file MixedModelBase.h.
Definition at line 102 of file MixedModelBase.h.
Definition at line 99 of file MixedModelBase.h.
Definition at line 99 of file MixedModelBase.h.
|
private |
Definition at line 93 of file MixedModelBase.h.
|
private |
Definition at line 96 of file MixedModelBase.h.
|
private |
Definition at line 100 of file MixedModelBase.h.
|
private |
Definition at line 95 of file MixedModelBase.h.
|
private |
Definition at line 101 of file MixedModelBase.h.
|
private |
Definition at line 101 of file MixedModelBase.h.
|
private |
Definition at line 91 of file MixedModelBase.h.
|
private |
Definition at line 100 of file MixedModelBase.h.