WTFIT
Public Member Functions | Static Public Member Functions | Protected Member Functions | List of all members
vtkThreeSkeleton Class Reference

VTK helper that processes the 3-skeleton (tetrahedra) of a data-set. More...

#include <vtkThreeSkeleton.h>

Inheritance diagram for vtkThreeSkeleton:
wtfit::Wrapper wtfit::Debug

Public Member Functions

 vtkTypeMacro (vtkThreeSkeleton, vtkDataSetAlgorithm)
 
 vtkSetMacro (debugLevel_, int)
 
void SetThreads ()
 
void SetThreadNumber (int threadNumber)
 
void SetUseAllCores (bool onOff)
 
int buildCellEdges (vtkDataSet *input, vector< vector< int > > &cellEdges, vector< pair< int, int > > *edgeList=NULL, vector< vector< int > > *vertexEdges=NULL, const bool &isTriangulation=false) const
 
int buildCellNeighbors (vtkDataSet *input, vector< vector< int > > &cellNeighbors, vector< vector< int > > *vertexStars=NULL, vector< vector< int > > *triangleStars=NULL, const bool &isTriangulation=false) const
 
int buildTriangulationCellNeighbors (vtkPolyData *input, vector< vector< int > > &cellNeighbors, vector< vector< int > > *vertexStars=NULL, vector< vector< int > > *triangleStars=NULL) const
 
int buildTriangulationCellNeighbors (vtkUnstructuredGrid *input, vector< vector< int > > &cellNeighbors, vector< vector< int > > *vertexStars=NULL, vector< vector< int > > *triangleStars=NULL) const
 
- Public Member Functions inherited from wtfit::Wrapper
 Wrapper ()
 
 ~Wrapper ()
 
- Public Member Functions inherited from wtfit::Debug
 Debug ()
 
virtual ~Debug ()
 
virtual const int dMsg (ostream &stream, string msg, const int &debugLevel=infoMsg) const
 
const int err (const string msg, const int &debugLevel=infoMsg) const
 
const int msg (const char *msg, const int &debugLevel=infoMsg) const
 
virtual const int setDebugLevel (const int &debugLevel)
 
int setThreadNumber (const int threadNumber)
 
int setWrapper (const Wrapper *wrapper)
 

Static Public Member Functions

static vtkThreeSkeletonNew ()
 

Protected Member Functions

 vtkThreeSkeleton ()
 
 ~vtkThreeSkeleton ()
 
int RequestData (vtkInformation *request, vtkInformationVector **inputVector, vtkInformationVector *outputVector)
 

Additional Inherited Members

- Public Types inherited from wtfit::Debug
enum  debugPriority {
  fatalMsg, timeMsg, memoryMsg, infoMsg,
  detailedInfoMsg, advancedInfoMsg
}
 
- Protected Attributes inherited from wtfit::Wrapper
float processingProgress_
 
- Protected Attributes inherited from wtfit::Debug
bool lastObject_
 
int debugLevel_
 
int threadNumber_
 
Wrapperwrapper_
 

Detailed Description

VTK helper that processes the 3-skeleton (tetrahedra) of a data-set.

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

VTK wrapping code for the package.

See also
vtkTriangulation
wtfit::Triangulation
wtfit::ThreeSkeleton

Constructor & Destructor Documentation

vtkThreeSkeleton::vtkThreeSkeleton ( )
protected
vtkThreeSkeleton::~vtkThreeSkeleton ( )
protected

Member Function Documentation

int vtkThreeSkeleton::buildCellEdges ( vtkDataSet *  input,
vector< vector< int > > &  cellEdges,
vector< pair< int, int > > *  edgeList = NULL,
vector< vector< int > > *  vertexEdges = NULL,
const bool &  isTriangulation = false 
) const

Compute the list of edges of each cell of a vtkDataSet.

Parameters
inputInput data-set.
cellEdgesOutput edge lists. The size of this vector will be equal to the number of cells in the mesh. Each entry will be a vector listing the edge identifiers of the entry's cell's edges.
edgeListOptional list of edges. If NULL, the function will compute this list anyway and free the related memory upon return. If not NULL but pointing to an empty vector, the function will fill this empty vector (useful if this list needs to be used later on by the calling program). If not NULL but pointing to a non-empty vector, this function will use this vector as internal edge list. If this vector is not empty but incorrect, the behavior is unspecified.
vertexEdgesOptional list of edges for each vertex. If NULL, the function will compute this list anyway and free the related memory upon return. If not NULL but pointing to an empty vector, the function will fill this empty vector (useful if this list needs to be used later on by the calling program). If not NULL but pointing to a non-empty vector, this function will use this vector as internal vertex edge list. If this vector is not empty but incorrect, the behavior is unspecified.
isTriangulationOptional flag that speeds up computation if the input mesh is indeed a valid triangulation (unspecified behavior otherwise).
Returns
Returns 0 upon success, negative values otherwise.
int vtkThreeSkeleton::buildCellNeighbors ( vtkDataSet *  input,
vector< vector< int > > &  cellNeighbors,
vector< vector< int > > *  vertexStars = NULL,
vector< vector< int > > *  triangleStars = NULL,
const bool &  isTriangulation = false 
) const

Compute the list of neighbors of each cell of a vtkDataSet.

Parameters
inputInput data-set.
cellNeighborsOutput neighbor list. The size of this vector will be equal to the number of cells in the mesh. Each entry will be a 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 NULL, the function will compute this list anyway and free the related memory upon return. If not NULL but pointing to an empty vector, the function will fill this empty vector (useful if this list needs to be used later on by the calling program). If not NULL but pointing to a non-empty vector, this function will use this vector as internal vertex star list. If this vector is not empty but incorrect, the behavior is unspecified.
triangleStarsOptional list of triangle stars (list of 3-dimensional cells connected to each triangle). If NULL, the function will compute this list anyway and free the related memory upon return. If not NULL but pointing to an empty vector, the function will fill this empty vector (useful if this list needs to be used later on by the calling program). If not NULL but pointing to a non-empty vector, this function will use this vector as internal triangle star list. If this vector is not empty but incorrect, the behavior is unspecified.
isTriangulationOptional flag that speeds up computation if the input mesh is indeed a valid triangulation (unspecified behavior otherwise).
Returns
Returns 0 upon success, negative values otherwise.
int vtkThreeSkeleton::buildTriangulationCellNeighbors ( vtkPolyData *  input,
vector< vector< int > > &  cellNeighbors,
vector< vector< int > > *  vertexStars = NULL,
vector< vector< int > > *  triangleStars = NULL 
) const
inline

Compute the list of neighbors of each cell of a triangulation represented by.a vtkPolyData object (unspecified behavior if the input mesh is not a triangulation).

Parameters
inputInput vtkPolyData object.
cellNeighborsOutput neighbor list. The size of this vector will be equal to the number of cells in the mesh. Each entry will be a 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 NULL, the function will compute this list anyway and free the related memory upon return. If not NULL but pointing to an empty vector, the function will fill this empty vector (useful if this list needs to be used later on by the calling program). If not NULL but pointing to a non-empty vector, this function will use this vector as internal vertex star list. If this vector is not empty but incorrect, the behavior is unspecified.
triangleStarsOptional list of triangle stars (list of 3-dimensional cells connected to each triangle). If NULL, the function will compute this list anyway and free the related memory upon return. If not NULL but pointing to an empty vector, the function will fill this empty vector (useful if this list needs to be used later on by the calling program). If not NULL but pointing to a non-empty vector, this function will use this vector as internal triangle star list. If this vector is not empty but incorrect, the behavior is unspecified.
Returns
Returns 0 upon success, negative values otherwise.
int vtkThreeSkeleton::buildTriangulationCellNeighbors ( vtkUnstructuredGrid *  input,
vector< vector< int > > &  cellNeighbors,
vector< vector< int > > *  vertexStars = NULL,
vector< vector< int > > *  triangleStars = NULL 
) const
inline

Compute the list of neighbors of each cell of a triangulation represented by.a vtkUnstructuredGrid object (unspecified behavior if the input mesh is not a triangulation).

Parameters
inputInput vtkUnstructuredGrid object.
cellNeighborsOutput neighbor list. The size of this vector will be equal to the number of cells in the mesh. Each entry will be a 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 NULL, the function will compute this list anyway and free the related memory upon return. If not NULL but pointing to an empty vector, the function will fill this empty vector (useful if this list needs to be used later on by the calling program). If not NULL but pointing to a non-empty vector, this function will use this vector as internal vertex star list. If this vector is not empty but incorrect, the behavior is unspecified.
triangleStarsOptional list of triangle stars (list of 3-dimensional cells connected to each triangle). If NULL, the function will compute this list anyway and free the related memory upon return. If not NULL but pointing to an empty vector, the function will fill this empty vector (useful if this list needs to be used later on by the calling program). If not NULL but pointing to a non-empty vector, this function will use this vector as internal triangle star list. If this vector is not empty but incorrect, the behavior is unspecified.
Returns
Returns 0 upon success, negative values otherwise.
static vtkThreeSkeleton* vtkThreeSkeleton::New ( )
static
int vtkThreeSkeleton::RequestData ( vtkInformation *  request,
vtkInformationVector **  inputVector,
vtkInformationVector *  outputVector 
)
protected
void vtkThreeSkeleton::SetThreadNumber ( int  threadNumber)
inline
void vtkThreeSkeleton::SetThreads ( )
inline
void vtkThreeSkeleton::SetUseAllCores ( bool  onOff)
inline
vtkThreeSkeleton::vtkSetMacro ( debugLevel_  ,
int   
)
vtkThreeSkeleton::vtkTypeMacro ( vtkThreeSkeleton  ,
vtkDataSetAlgorithm   
)

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