TTK
Loading...
Searching...
No Matches
Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
ttk::RipsComplex Class Reference

TTK VTK-filter that computes a Rips complex. More...

#include <RipsComplex.h>

Inheritance diagram for ttk::RipsComplex:
ttk::Debug ttk::BaseClass ttkRipsComplex

Public Member Functions

 RipsComplex ()
 
int execute (std::vector< SimplexId > &connectivity, std::vector< double > &diameters, std::array< double *const, 3 > diamStats, const std::vector< std::vector< double > > &distanceMatrix, double *const density=nullptr) const
 Main entry point.
 
- 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)
 
virtual int setWrapper (const Wrapper *wrapper)
 

Protected Member Functions

int computeDiameterStats (const SimplexId nPoints, std::array< double *const, 3 > diamStats, const std::vector< SimplexId > &connectivity, const std::vector< double > &cellDiameters) const
 Compute diameter statistics on points.
 
int computeGaussianDensity (double *const density, const std::vector< std::vector< double > > &distanceMatrix) const
 Compute Gaussian density on points.
 
- 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

int OutputDimension {2}
 
double Epsilon {1.0}
 
double StdDev {1.0}
 
bool ComputeGaussianDensity {false}
 
- 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_
 

Additional Inherited Members

- Static Protected Attributes inherited from ttk::Debug
static COMMON_EXPORTS debug::LineMode lastLineMode = ttk::debug::LineMode::NEW
 

Detailed Description

TTK VTK-filter that computes a Rips complex.

Author
Pierre Guillou pierr.nosp@m.e.gu.nosp@m.illou.nosp@m.@lip.nosp@m.6.fr
Date
January 2022
Parameters
InputInput table (vtkTable)
OutputTriangulation (vtkUnstructuredGrid)

TTK VTK-filter that takes a matrix (vtkTable) as input and computes a Rips complex from it to generate an explicit triangulation.

See also
ttk::Triangulation
ttkRipsComplex.cpp for a usage example.

Online examples:

Definition at line 34 of file RipsComplex.h.

Constructor & Destructor Documentation

◆ RipsComplex()

ttk::RipsComplex::RipsComplex ( )

Definition at line 5 of file RipsComplex.cpp.

Member Function Documentation

◆ computeDiameterStats()

int ttk::RipsComplex::computeDiameterStats ( const SimplexId  nPoints,
std::array< double *const, 3 >  diamStats,
const std::vector< SimplexId > &  connectivity,
const std::vector< double > &  cellDiameters 
) const
protected

Compute diameter statistics on points.

Parameters
[in]nPointsNumber of input points
[out]diamStatsMin, mean and max cell diameters around point
[in]connectivityCell connectivity array (pre-filled)
[in]cellDiametersCell diameters

Definition at line 213 of file RipsComplex.cpp.

◆ computeGaussianDensity()

int ttk::RipsComplex::computeGaussianDensity ( double *const  density,
const std::vector< std::vector< double > > &  distanceMatrix 
) const
protected

Compute Gaussian density on points.

Parameters
[out]densityGaussian density array on points
[in]distanceMatrixDistance matrix between points

Definition at line 190 of file RipsComplex.cpp.

◆ execute()

int ttk::RipsComplex::execute ( std::vector< SimplexId > &  connectivity,
std::vector< double > &  diameters,
std::array< double *const, 3 >  diamStats,
const std::vector< std::vector< double > > &  distanceMatrix,
double *const  density = nullptr 
) const

Main entry point.

Parameters
[out]connectivityCell connectivity array (VTK format)
[out]diametersCell diameters
[out]diamStatsMin, mean and max cell diameters around point
[in]distanceMatrixInput distance matrix
[out]densityGaussian density array on points

Definition at line 262 of file RipsComplex.cpp.

Member Data Documentation

◆ ComputeGaussianDensity

bool ttk::RipsComplex::ComputeGaussianDensity {false}
protected

Compute the Gaussian density from the distance matrix

Definition at line 84 of file RipsComplex.h.

◆ Epsilon

double ttk::RipsComplex::Epsilon {1.0}
protected

Distance threshold

Definition at line 80 of file RipsComplex.h.

◆ OutputDimension

int ttk::RipsComplex::OutputDimension {2}
protected

Dimension of the generated complex

Definition at line 78 of file RipsComplex.h.

◆ StdDev

double ttk::RipsComplex::StdDev {1.0}
protected

Standard Deviation for Gaussian density

Definition at line 82 of file RipsComplex.h.


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