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

ZeroSkeleton processing package. More...

#include <ZeroSkeleton.h>

Inheritance diagram for ttk::ZeroSkeleton:
ttk::Debug ttk::BaseClass

Public Member Functions

 ZeroSkeleton ()
 
int buildVertexEdges (const SimplexId &vertexNumber, const std::vector< std::array< SimplexId, 2 > > &edgeList, FlatJaggedArray &vertexEdges) const
 
int buildVertexLinks (const FlatJaggedArray &vertexStars, const std::vector< std::array< SimplexId, 3 > > &cellEdges, const std::vector< std::array< SimplexId, 2 > > &edgeList, FlatJaggedArray &vertexLinks) const
 
int buildVertexLinks (const FlatJaggedArray &vertexStars, const std::vector< std::array< SimplexId, 4 > > &cellTriangles, const std::vector< std::array< SimplexId, 3 > > &triangleList, FlatJaggedArray &vertexLinks) const
 
int buildVertexNeighbors (const SimplexId &vertexNumber, FlatJaggedArray &vertexNeighbors, const std::vector< std::array< SimplexId, 2 > > &edgeList) const
 
int buildVertexStars (const SimplexId &vertexNumber, const CellArray &cellArray, FlatJaggedArray &vertexStars) 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

ZeroSkeleton processing package.

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

ZeroSkeleton is a processing package that handles the 0-skeleton (vertices) of a triangulation.

See also
Triangulation
ttkTriangulation

Definition at line 25 of file ZeroSkeleton.h.

Constructor & Destructor Documentation

◆ ZeroSkeleton()

ZeroSkeleton::ZeroSkeleton ( )

Definition at line 5 of file ZeroSkeleton.cpp.

Member Function Documentation

◆ buildVertexEdges()

int ZeroSkeleton::buildVertexEdges ( const SimplexId vertexNumber,
const std::vector< std::array< SimplexId, 2 > > &  edgeList,
FlatJaggedArray vertexEdges 
) const

Compute the list of edges connected to each vertex of a triangulation.

Parameters
vertexNumberNumber of vertices in the triangulation.
edgeListList of edges. Each entry is represented by the ordered std::pair of identifiers of the entry's edge's vertices.
vertexEdgesOutput vertex links. The size of this std::vector will be equal to the number of vertices in the mesh. Each entry will be a std::vector listing the identifiers of the edges connected to the entry's vertex.
Returns
Returns 0 upon success, negative values otherwise.

Definition at line 9 of file ZeroSkeleton.cpp.

◆ buildVertexLinks() [1/2]

int ZeroSkeleton::buildVertexLinks ( const FlatJaggedArray vertexStars,
const std::vector< std::array< SimplexId, 3 > > &  cellEdges,
const std::vector< std::array< SimplexId, 2 > > &  edgeList,
FlatJaggedArray vertexLinks 
) const

Compute the link of each vertex of a 2D triangulation (unspecified behavior if the input mesh is not a valid triangulation).

Parameters
vertexStarsList of vertex stars. The size of this std::vector should be equal to the number of vertices in the triangulation. Each entry is a std::vector listing the identifiers of triangles.
cellEdgesList of cell edges. The size of this std::vector should be equal to the number of triangles. Each entry is a std::array of identifiers of edges.
edgeListList of edges. The size of this std::vector should be equal to the number of edges. Each entry is a std::array of vertex identifiers per edge.
vertexLinksOutput vertex links. The size of this std::vector will be equal to the number of vertices in the triangulation. Each entry will be a std::vector listing the edges in the link of the corresponding vertex.
Returns
Returns 0 upon success, negative values otherwise.

Definition at line 59 of file ZeroSkeleton.cpp.

◆ buildVertexLinks() [2/2]

int ZeroSkeleton::buildVertexLinks ( const FlatJaggedArray vertexStars,
const std::vector< std::array< SimplexId, 4 > > &  cellTriangles,
const std::vector< std::array< SimplexId, 3 > > &  triangleList,
FlatJaggedArray vertexLinks 
) const

Compute the link of each vertex of a 3D triangulation (unspecified behavior if the input mesh is not a valid triangulation).

Parameters
vertexStarsList of vertex stars. The size of this std::vector should be equal to the number of vertices in the triangulation. Each entry is a std::vector listing the identifiers of tetrahedra.
cellTrianglesList of cell triangles. The size of this std::vector should be equal to the number of tetrahedra. Each entry is a std::vector of identifiers of triangles.
triangleListList of triangles. For each triangle, a std::array identifying its three vertices.
vertexLinksOutput vertex links. The size of this std::vector will be equal to the number of vertices in the triangulation. Each entry will be a std::vector listing the triangles in the link of the corresponding vertex.
Returns
Returns 0 upon success, negative values otherwise.

Definition at line 116 of file ZeroSkeleton.cpp.

◆ buildVertexNeighbors()

int ZeroSkeleton::buildVertexNeighbors ( const SimplexId vertexNumber,
FlatJaggedArray vertexNeighbors,
const std::vector< std::array< SimplexId, 2 > > &  edgeList 
) const

Compute the list of neighbors of each vertex of a triangulation. Unspecified behavior if the input mesh is not a valid triangulation).

Parameters
vertexNumberNumber of vertices in the triangulation.
vertexNeighborsOutput neighbor list. The size of this std::vector will be equal to the number of vertices in the mesh. Each entry will be std::vector listing the vertex identifiers of the entry's vertex' neighbors.
edgeListList of edges. If this std::vector is not empty but incorrect, the behavior is unspecified.
Returns
Returns 0 upon success, negative values otherwise.

Definition at line 173 of file ZeroSkeleton.cpp.

◆ buildVertexStars()

int ZeroSkeleton::buildVertexStars ( const SimplexId vertexNumber,
const CellArray cellArray,
FlatJaggedArray vertexStars 
) const

Compute the star of each vertex of a triangulation. Unspecified behavior if the input mesh is not a valid triangulation.

Parameters
vertexNumberNumber of vertices in the triangulation.
cellArrayCell container allowing to retrieve the vertices of each cell.
vertexStarsOutput vertex stars. The size of this std::vector will be equal to the number of vertices in the mesh. Each entry will be a std::vector listing the identifiers of the maximum-dimensional cells (3D: tetrahedra, 2D: triangles, etc.) connected to the entry's vertex.
Returns
Returns 0 upon success, negative values otherwise.

Definition at line 222 of file ZeroSkeleton.cpp.


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