![]() |
PeriDyno 1.0.0
|
Automatic layout for directed acyclic graph Refer to "Sugiyama Algorithm" by Nikola S. Nikolov[2015] for details. More...
#include <AutoLayoutDAG.h>
Public Member Functions | |
AutoLayoutDAG (DirectedAcyclicGraph *dag) | |
~AutoLayoutDAG () | |
void | update () |
size_t | layerNumber () |
size_t | OtherVerticesSize () |
std::set< ObjectId > & | getOtherVertices () |
std::vector< ObjectId > & | layer (size_t l) |
Protected Member Functions | |
void | constructHierarchy () |
void | addDummyVertices () |
void | minimizeEdgeCrossings () |
Private Attributes | |
DirectedAcyclicGraph * | pDAG |
std::set< ObjectId > | mVertices |
std::map< ObjectId, std::unordered_set< ObjectId > > | mEdges |
std::map< ObjectId, std::unordered_set< ObjectId > > | mReverseEdges |
std::map< ObjectId, int > | mLayers |
std::map< ObjectId, int > | mXCoordinate |
std::vector< std::vector< ObjectId > > | mNodeLayers |
size_t | mLayerNum = 0 |
std::set< ObjectId > | OtherVertices |
int | mIterNum = 1 |
Automatic layout for directed acyclic graph Refer to "Sugiyama Algorithm" by Nikola S. Nikolov[2015] for details.
Definition at line 24 of file AutoLayoutDAG.h.
dyno::AutoLayoutDAG::AutoLayoutDAG | ( | DirectedAcyclicGraph * | dag | ) |
Definition at line 6 of file AutoLayoutDAG.cpp.
dyno::AutoLayoutDAG::~AutoLayoutDAG | ( | ) |
Definition at line 39 of file AutoLayoutDAG.cpp.
|
protected |
Definition at line 166 of file AutoLayoutDAG.cpp.
|
protected |
Definition at line 72 of file AutoLayoutDAG.cpp.
|
inline |
|
inline |
|
inline |
|
protected |
Definition at line 222 of file AutoLayoutDAG.cpp.
|
inline |
Definition at line 34 of file AutoLayoutDAG.h.
void dyno::AutoLayoutDAG::update | ( | ) |
Definition at line 63 of file AutoLayoutDAG.cpp.
Definition at line 51 of file AutoLayoutDAG.h.
|
private |
Definition at line 62 of file AutoLayoutDAG.h.
|
private |
Definition at line 58 of file AutoLayoutDAG.h.
|
private |
Definition at line 54 of file AutoLayoutDAG.h.
|
private |
Definition at line 57 of file AutoLayoutDAG.h.
Definition at line 52 of file AutoLayoutDAG.h.
|
private |
Definition at line 50 of file AutoLayoutDAG.h.
|
private |
Definition at line 55 of file AutoLayoutDAG.h.
|
private |
Definition at line 60 of file AutoLayoutDAG.h.
|
private |
Definition at line 48 of file AutoLayoutDAG.h.