VTK
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Public Types | Public Member Functions | Static Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
vtkReebGraphVolumeSkeletonFilter Class Reference

compute a skeletal embedding of the Reeb graph of a scalar field defined on a tetrahedral mesh (vtkUnstructuredGrid). More...

#include <vtkReebGraphVolumeSkeletonFilter.h>

Inherits vtkDataObjectAlgorithm.

Public Types

typedef vtkDataObjectAlgorithm Superclass
 

Public Member Functions

virtual int IsA (const char *type)
 
vtkReebGraphVolumeSkeletonFilterNewInstance () const
 
void PrintSelf (ostream &os, vtkIndent indent)
 
vtkTable * GetOutput ()
 
virtual void SetNumberOfSamples (int)
 
virtual int GetNumberOfSamples ()
 
virtual void SetNumberOfSmoothingIterations (int)
 
virtual int GetNumberOfSmoothingIterations ()
 
virtual void SetFieldId (vtkIdType)
 
virtual vtkIdType GetFieldId ()
 

Static Public Member Functions

static
vtkReebGraphVolumeSkeletonFilter
New ()
 
static int IsTypeOf (const char *type)
 
static
vtkReebGraphVolumeSkeletonFilter
SafeDownCast (vtkObjectBase *o)
 

Protected Member Functions

virtual vtkObjectBase * NewInstanceInternal () const
 
 vtkReebGraphVolumeSkeletonFilter ()
 
 ~vtkReebGraphVolumeSkeletonFilter ()
 
int FillInputPortInformation (int portNumber, vtkInformation *)
 
int FillOutputPortInformation (int portNumber, vtkInformation *info)
 
int RequestData (vtkInformation *request, vtkInformationVector **inputVector, vtkInformationVector *outputVector)
 

Protected Attributes

vtkIdType FieldId
 
int NumberOfSamples
 
int NumberOfSmoothingIterations
 

Detailed Description

compute a skeletal embedding of the Reeb graph of a scalar field defined on a tetrahedral mesh (vtkUnstructuredGrid).

The filter takes a vtkUnstructuredGrid as an input (port 0), along with a vtkReebGraph (port 1). The filter samples each arc of the Reeb graph and embeds the samples on the barycenter of the corresponding field contour. The number of (evenly distributed) arc samples can be defined with SetNumberOfSamples() (default value: 10). The skeleton can be optionally smoothed with SetNumberOfSmoothingIterations() (default value: 10). The filter will first try to pull as a scalar field the vtkDataArray with Id 'FieldId' of the vtkPolyData, see SetFieldId() (default: 0). The filter will abort if this field does not exist.

The filter outputs a vtkTable of points (double[3]). Each column contains the samples (sorted by function value) of the corresponding arc. The first and the last entry of the column corresponds to the critical nodes at the extremity of the arc (each column has NumberOfSamples + 2 entries).

The skeleton can be rendered by linking the samples with geometrical primitives (for instance, spheres at critical nodes and cylinders between intermediary samples, see Graphics/Testing/Cxx/TestReebGraph.cxx).

Tests:
vtkReebGraphVolumeSkeletonFilter (Tests)

Definition at line 55 of file vtkReebGraphVolumeSkeletonFilter.h.

Member Typedef Documentation

typedef vtkDataObjectAlgorithm vtkReebGraphVolumeSkeletonFilter::Superclass

Definition at line 61 of file vtkReebGraphVolumeSkeletonFilter.h.

Constructor & Destructor Documentation

vtkReebGraphVolumeSkeletonFilter::vtkReebGraphVolumeSkeletonFilter ( )
protected
vtkReebGraphVolumeSkeletonFilter::~vtkReebGraphVolumeSkeletonFilter ( )
protected

Member Function Documentation

static vtkReebGraphVolumeSkeletonFilter* vtkReebGraphVolumeSkeletonFilter::New ( )
static
static int vtkReebGraphVolumeSkeletonFilter::IsTypeOf ( const char *  type)
static
virtual int vtkReebGraphVolumeSkeletonFilter::IsA ( const char *  type)
virtual
static vtkReebGraphVolumeSkeletonFilter* vtkReebGraphVolumeSkeletonFilter::SafeDownCast ( vtkObjectBase *  o)
static
virtual vtkObjectBase* vtkReebGraphVolumeSkeletonFilter::NewInstanceInternal ( ) const
protectedvirtual
vtkReebGraphVolumeSkeletonFilter* vtkReebGraphVolumeSkeletonFilter::NewInstance ( ) const
void vtkReebGraphVolumeSkeletonFilter::PrintSelf ( ostream &  os,
vtkIndent  indent 
)
virtual void vtkReebGraphVolumeSkeletonFilter::SetNumberOfSamples ( int  )
virtual

Set the number of samples along each arc of the Reeb graph Default value: 5

virtual int vtkReebGraphVolumeSkeletonFilter::GetNumberOfSamples ( )
virtual

Set the number of samples along each arc of the Reeb graph Default value: 5

virtual void vtkReebGraphVolumeSkeletonFilter::SetNumberOfSmoothingIterations ( int  )
virtual

Set the number of optional smoothing iterations Default value: 30

virtual int vtkReebGraphVolumeSkeletonFilter::GetNumberOfSmoothingIterations ( )
virtual

Set the number of optional smoothing iterations Default value: 30

virtual void vtkReebGraphVolumeSkeletonFilter::SetFieldId ( vtkIdType  )
virtual

Set the scalar field Id Default value: 0

virtual vtkIdType vtkReebGraphVolumeSkeletonFilter::GetFieldId ( )
virtual

Set the scalar field Id Default value: 0

vtkTable* vtkReebGraphVolumeSkeletonFilter::GetOutput ( )
int vtkReebGraphVolumeSkeletonFilter::FillInputPortInformation ( int  portNumber,
vtkInformation *   
)
protected
int vtkReebGraphVolumeSkeletonFilter::FillOutputPortInformation ( int  portNumber,
vtkInformation *  info 
)
protected
int vtkReebGraphVolumeSkeletonFilter::RequestData ( vtkInformation *  request,
vtkInformationVector **  inputVector,
vtkInformationVector *  outputVector 
)
protected

Member Data Documentation

vtkIdType vtkReebGraphVolumeSkeletonFilter::FieldId
protected

Definition at line 89 of file vtkReebGraphVolumeSkeletonFilter.h.

int vtkReebGraphVolumeSkeletonFilter::NumberOfSamples
protected

Definition at line 90 of file vtkReebGraphVolumeSkeletonFilter.h.

int vtkReebGraphVolumeSkeletonFilter::NumberOfSmoothingIterations
protected

Definition at line 90 of file vtkReebGraphVolumeSkeletonFilter.h.


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