TTK
Loading...
Searching...
No Matches
ttk::PlanarGraphLayout Class Reference

TTK planarGraphLayout processing package. More...

#include <PlanarGraphLayout.h>

Inheritance diagram for ttk::PlanarGraphLayout:
ttk::Debug ttk::BaseClass ttkPlanarGraphLayout

Public Member Functions

 PlanarGraphLayout ()
 ~PlanarGraphLayout () override
template<typename ST, typename IT, typename CT>
int computeLayout (float *layout, const CT *connectivityList, const size_t &nPoints, const size_t &nEdges, const ST *pointSequences, const float *sizes, const IT *branches, const IT *levels) const
template<typename IT, typename CT>
int extractLevel (std::vector< size_t > &nodeIndices, std::vector< size_t > &edgeIndices, const CT *connectivityList, const size_t &nPoints, const size_t &nEdges, const IT &level, const IT *levels) const
template<typename ST, typename IT, typename CT>
int computeDotString (std::string &dotString, const CT *connectivityList, const ST *pointSequences, const float *sizes, const IT *branches, const std::vector< size_t > &nodeIndices, const std::vector< size_t > &edgeIndices, const std::map< ST, size_t > &sequenceValueToIndexMap) const
template<typename IT, typename CT>
int computeSlots (float *layout, const CT *connectivityList, const size_t &nPoints, const size_t &nEdges, const float *sizes, const IT *levels, const IT &nLevels) const
int computeDotLayout (float *layout, const std::vector< size_t > &nodeIndices, const std::string &dotString) const
Public Member Functions inherited from ttk::Debug
 Debug ()
 ~Debug () override
virtual int setDebugLevel (const int &debugLevel)
int setWrapper (const Wrapper *wrapper) override
int printMsg (const std::string &msg, const debug::Priority &priority=debug::Priority::INFO, const debug::LineMode &lineMode=debug::LineMode::NEW, std::ostream &stream=std::cout) const
int printMsg (const std::vector< std::string > &msgs, const debug::Priority &priority=debug::Priority::INFO, const debug::LineMode &lineMode=debug::LineMode::NEW, std::ostream &stream=std::cout) const
int printErr (const std::string &msg, const debug::LineMode &lineMode=debug::LineMode::NEW, std::ostream &stream=std::cerr) const
int printWrn (const std::string &msg, const debug::LineMode &lineMode=debug::LineMode::NEW, std::ostream &stream=std::cerr) const
int printMsg (const std::string &msg, const double &progress, const double &time, const int &threads, const double &memory, const debug::LineMode &lineMode=debug::LineMode::NEW, const debug::Priority &priority=debug::Priority::PERFORMANCE, std::ostream &stream=std::cout) const
int printMsg (const std::string &msg, const double &progress, const double &time, const debug::LineMode &lineMode=debug::LineMode::NEW, const debug::Priority &priority=debug::Priority::PERFORMANCE, std::ostream &stream=std::cout) const
int printMsg (const std::string &msg, const double &progress, const double &time, const int &threads, const debug::LineMode &lineMode=debug::LineMode::NEW, const debug::Priority &priority=debug::Priority::PERFORMANCE, std::ostream &stream=std::cout) const
int printMsg (const std::string &msg, const double &progress, const debug::LineMode &lineMode=debug::LineMode::NEW, const debug::Priority &priority=debug::Priority::PERFORMANCE, std::ostream &stream=std::cout) const
int printMsg (const std::string &msg, const double &progress, const debug::Priority &priority, const debug::LineMode &lineMode=debug::LineMode::NEW, std::ostream &stream=std::cout) const
int printMsg (const std::vector< std::vector< std::string > > &rows, const debug::Priority &priority=debug::Priority::INFO, const bool hasHeader=true, const debug::LineMode &lineMode=debug::LineMode::NEW, std::ostream &stream=std::cout) const
int printMsg (const debug::Separator &separator, const debug::LineMode &lineMode=debug::LineMode::NEW, const debug::Priority &priority=debug::Priority::INFO, std::ostream &stream=std::cout) const
int printMsg (const debug::Separator &separator, const debug::Priority &priority, const debug::LineMode &lineMode=debug::LineMode::NEW, std::ostream &stream=std::cout) const
int printMsg (const std::string &msg, const debug::Separator &separator, const debug::LineMode &lineMode=debug::LineMode::NEW, const debug::Priority &priority=debug::Priority::INFO, std::ostream &stream=std::cout) const
void setDebugMsgPrefix (const std::string &prefix)
Public Member Functions inherited from ttk::BaseClass
 BaseClass ()
virtual ~BaseClass ()=default
int getThreadNumber () const
virtual int setThreadNumber (const int threadNumber)

Additional Inherited Members

Protected Member Functions inherited from ttk::Debug
int printMsgInternal (const std::string &msg, const std::string &right, const std::string &filler, const debug::Priority &priority=debug::Priority::INFO, const debug::LineMode &lineMode=debug::LineMode::NEW, std::ostream &stream=std::cout) const
int printMsgInternal (const std::string &msg, const debug::Priority &priority, const debug::LineMode &lineMode, std::ostream &stream=std::cout) const
int welcomeMsg (std::ostream &stream)
Protected Attributes inherited from ttk::Debug
int debugLevel_
std::string debugMsgPrefix_
std::string debugMsgNamePrefix_
Protected Attributes inherited from ttk::BaseClass
bool lastObject_
int threadNumber_
Wrapperwrapper_
Static Protected Attributes inherited from ttk::Debug
static COMMON_EXPORTS debug::LineMode lastLineMode = ttk::debug::LineMode::NEW

Detailed Description

TTK planarGraphLayout processing package.

Author
Jonas Lukasczyk (jl@jl.nosp@m.uk.d.nosp@m.e)
Date
01.12.2018

PlanarGraphLayout is a TTK processing package that computes a planar graph layout of a vtkUnstructuredGrid. To improve the quality of the layout it is possible to pass additional field data to the algorithm:
1) Sequences: Points are positioned along the x-axis based on a sequence (e.g., time indices or scalar values). 1) Sizes: Points cover space on the y-axis based on their size. 1) Branches: Points with the same branch label are positioned on straight lines. 1) Levels: The layout of points with the same level label are computed individually and afterwards nested based on the level hierarchy. This makes it possible to draw nested graphs where each level is a layer of the resulting graph.

Related publication:
'Nested Tracking Graphs' Jonas Lukasczyk, Gunther Weber, Ross Maciejewski, Christoph Garth, and Heike Leitte. Computer Graphics Forum (Special Issue, Proceedings Eurographics / IEEE Symposium on Visualization). Vol. 36. No. 3. 2017.

Online examples:

Definition at line 43 of file PlanarGraphLayout.h.

Constructor & Destructor Documentation

◆ PlanarGraphLayout()

ttk::PlanarGraphLayout::PlanarGraphLayout ( )

Definition at line 8 of file PlanarGraphLayout.cpp.

◆ ~PlanarGraphLayout()

ttk::PlanarGraphLayout::~PlanarGraphLayout ( )
overridedefault

Member Function Documentation

◆ computeDotLayout()

int ttk::PlanarGraphLayout::computeDotLayout ( float * layout,
const std::vector< size_t > & nodeIndices,
const std::string & dotString ) const

Definition at line 14 of file PlanarGraphLayout.cpp.

◆ computeDotString()

template<typename ST, typename IT, typename CT>
int ttk::PlanarGraphLayout::computeDotString ( std::string & dotString,
const CT * connectivityList,
const ST * pointSequences,
const float * sizes,
const IT * branches,
const std::vector< size_t > & nodeIndices,
const std::vector< size_t > & edgeIndices,
const std::map< ST, size_t > & sequenceValueToIndexMap ) const

Definition at line 164 of file PlanarGraphLayout.h.

◆ computeLayout()

template<typename ST, typename IT, typename CT>
int ttk::PlanarGraphLayout::computeLayout ( float * layout,
const CT * connectivityList,
const size_t & nPoints,
const size_t & nEdges,
const ST * pointSequences,
const float * sizes,
const IT * branches,
const IT * levels ) const

Definition at line 380 of file PlanarGraphLayout.h.

◆ computeSlots()

template<typename IT, typename CT>
int ttk::PlanarGraphLayout::computeSlots ( float * layout,
const CT * connectivityList,
const size_t & nPoints,
const size_t & nEdges,
const float * sizes,
const IT * levels,
const IT & nLevels ) const

Definition at line 279 of file PlanarGraphLayout.h.

◆ extractLevel()

template<typename IT, typename CT>
int ttk::PlanarGraphLayout::extractLevel ( std::vector< size_t > & nodeIndices,
std::vector< size_t > & edgeIndices,
const CT * connectivityList,
const size_t & nPoints,
const size_t & nEdges,
const IT & level,
const IT * levels ) const

Definition at line 118 of file PlanarGraphLayout.h.


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