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

ThreeSkeleton processing package. More...

#include <ThreeSkeleton.h>

Inheritance diagram for ttk::ThreeSkeleton:
ttk::Debug ttk::BaseClass

Public Member Functions

 ThreeSkeleton ()
 
int buildCellNeighborsFromTriangles (const SimplexId &vertexNumber, const CellArray &cellArray, FlatJaggedArray &cellNeighbors, FlatJaggedArray *triangleStars=nullptr) const
 
int buildCellNeighborsFromVertices (const SimplexId &vertexNumber, const CellArray &cellArray, FlatJaggedArray &cellNeighbors, FlatJaggedArray *vertexStars=nullptr) 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)
 
virtual int setWrapper (const Wrapper *wrapper)
 

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

ThreeSkeleton processing package.

Author
Julien Tierny julie.nosp@m.n.ti.nosp@m.erny@.nosp@m.lip6.nosp@m..fr
Date
August 2015.

ThreeSkeleton is a processing package that handles the 3-skeleton (tetrahedra) of a triangulation.

See also
Triangulation
ttkTriangulation

Definition at line 26 of file ThreeSkeleton.h.

Constructor & Destructor Documentation

◆ ThreeSkeleton()

ThreeSkeleton::ThreeSkeleton ( )

Definition at line 6 of file ThreeSkeleton.cpp.

Member Function Documentation

◆ buildCellNeighborsFromTriangles()

int ThreeSkeleton::buildCellNeighborsFromTriangles ( const SimplexId vertexNumber,
const CellArray cellArray,
FlatJaggedArray cellNeighbors,
FlatJaggedArray triangleStars = nullptr 
) const

Compute the list of cell-neighbors of each cell of a triangulation (unspecified behavior if the input mesh is not a triangulation). This implementation is fast only if you already have the triangle stars computed. Otherwise, please use ThreeSkeleton::buildCellNeighborsFromVertices instead.

Parameters
vertexNumberNumber of vertices in the triangulation.
cellArrayCell container allowing to retrieve the vertices ids of each cell.
cellNeighborsOutput neighbor list. The size of this std::vector will be equal to the number of cells in the mesh. Each entry will be a std::vector listing the cell identifiers of the entry's cell's neighbors.
triangleStarsOptional list of triangle stars (list of 3-dimensional cells connected to each triangle). If nullptr, the function will compute this list anyway and free the related memory upon return. If not nullptr but pointing to an empty std::vector, the function will fill this empty std::vector (useful if this list needs to be used later on by the calling program). If not nullptr but pointing to a non-empty std::vector, this function will use this std::vector as internal triangle star list. If this std::vector is not empty but incorrect, the behavior is unspecified.
Returns
Returns 0 upon success, negative values otherwise.

Definition at line 11 of file ThreeSkeleton.cpp.

◆ buildCellNeighborsFromVertices()

int ThreeSkeleton::buildCellNeighborsFromVertices ( const SimplexId vertexNumber,
const CellArray cellArray,
FlatJaggedArray cellNeighbors,
FlatJaggedArray vertexStars = nullptr 
) const

Compute the list of cell-neighbors of each cell of a triangulation (unspecified behavior if the input mesh is not a triangulation).

Parameters
vertexNumberNumber of vertices in the triangulation.
cellArrayCell container allowing to retrieve the vertices ids of each cell.
cellNeighborsOutput neighbor list. The size of this std::vector will be equal to the number of cells in the mesh. Each entry will be a std::vector listing the cell identifiers of the entry's cell's neighbors.
vertexStarsOptional list of vertex stars (list of 3-dimensional cells connected to each vertex). If nullptr, the function will compute this list anyway and free the related memory upon return. If not nullptr but pointing to an empty std::vector, the function will fill this empty std::vector (useful if this list needs to be used later on by the calling program). If not nullptr but pointing to a non-empty std::vector, this function will use this std::vector as internal vertex star list. If this std::vector is not empty but incorrect, the behavior is unspecified.
Returns
Returns 0 upon success, negative values otherwise.

Definition at line 97 of file ThreeSkeleton.cpp.


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