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
vtkReebGraphSurfaceSkeletonFilter Class Reference

compute a skeletal embedding of the Reeb graph of a scalar field defined on a triangulated surface (vtkPolyData). More...

#include <vtkReebGraphSurfaceSkeletonFilter.h>

Inherits vtkDataObjectAlgorithm.

Public Types

typedef vtkDataObjectAlgorithm Superclass
 

Public Member Functions

virtual int IsA (const char *type)
 
vtkReebGraphSurfaceSkeletonFilterNewInstance () 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
vtkReebGraphSurfaceSkeletonFilter
New ()
 
static int IsTypeOf (const char *type)
 
static
vtkReebGraphSurfaceSkeletonFilter
SafeDownCast (vtkObjectBase *o)
 

Protected Member Functions

virtual vtkObjectBase * NewInstanceInternal () const
 
 vtkReebGraphSurfaceSkeletonFilter ()
 
 ~vtkReebGraphSurfaceSkeletonFilter ()
 
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 triangulated surface (vtkPolyData).

The filter takes a vtkPolyData 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:
vtkReebGraphSurfaceSkeletonFilter (Tests)

Definition at line 54 of file vtkReebGraphSurfaceSkeletonFilter.h.

Member Typedef Documentation

typedef vtkDataObjectAlgorithm vtkReebGraphSurfaceSkeletonFilter::Superclass

Definition at line 59 of file vtkReebGraphSurfaceSkeletonFilter.h.

Constructor & Destructor Documentation

vtkReebGraphSurfaceSkeletonFilter::vtkReebGraphSurfaceSkeletonFilter ( )
protected
vtkReebGraphSurfaceSkeletonFilter::~vtkReebGraphSurfaceSkeletonFilter ( )
protected

Member Function Documentation

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

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

virtual int vtkReebGraphSurfaceSkeletonFilter::GetNumberOfSamples ( )
virtual

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

virtual void vtkReebGraphSurfaceSkeletonFilter::SetNumberOfSmoothingIterations ( int  )
virtual

Set the number of optional smoothing iterations Default value: 30

virtual int vtkReebGraphSurfaceSkeletonFilter::GetNumberOfSmoothingIterations ( )
virtual

Set the number of optional smoothing iterations Default value: 30

virtual void vtkReebGraphSurfaceSkeletonFilter::SetFieldId ( vtkIdType  )
virtual

Set the scalar field Id Default value: 0

virtual vtkIdType vtkReebGraphSurfaceSkeletonFilter::GetFieldId ( )
virtual

Set the scalar field Id Default value: 0

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

Member Data Documentation

vtkIdType vtkReebGraphSurfaceSkeletonFilter::FieldId
protected

Definition at line 87 of file vtkReebGraphSurfaceSkeletonFilter.h.

int vtkReebGraphSurfaceSkeletonFilter::NumberOfSamples
protected

Definition at line 88 of file vtkReebGraphSurfaceSkeletonFilter.h.

int vtkReebGraphSurfaceSkeletonFilter::NumberOfSmoothingIterations
protected

Definition at line 88 of file vtkReebGraphSurfaceSkeletonFilter.h.


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