VTK
Public Types | Public Member Functions | Static Public Member Functions | Protected Member Functions | Protected Attributes
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>

Inheritance diagram for vtkReebGraphSurfaceSkeletonFilter:
Inheritance graph
[legend]
Collaboration diagram for vtkReebGraphSurfaceSkeletonFilter:
Collaboration graph
[legend]

List of all members.

Public Types

typedef vtkDataObjectAlgorithm Superclass

Public Member Functions

virtual int IsA (const char *type)
vtkReebGraphSurfaceSkeletonFilterNewInstance () const
void PrintSelf (ostream &os, vtkIndent indent)
vtkTableGetOutput ()
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 vtkObjectBaseNewInstanceInternal () 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

Reimplemented from vtkDataObjectAlgorithm.

Definition at line 59 of file vtkReebGraphSurfaceSkeletonFilter.h.


Constructor & Destructor Documentation


Member Function Documentation

Create an object with Debug turned off, modified time initialized to zero, and reference counting on.

Reimplemented from vtkDataObjectAlgorithm.

static int vtkReebGraphSurfaceSkeletonFilter::IsTypeOf ( const char *  name) [static]

Return 1 if this class type is the same type of (or a subclass of) the named class. Returns 0 otherwise. This method works in combination with vtkTypeMacro found in vtkSetGet.h.

Reimplemented from vtkDataObjectAlgorithm.

virtual int vtkReebGraphSurfaceSkeletonFilter::IsA ( const char *  name) [virtual]

Return 1 if this class is the same type of (or a subclass of) the named class. Returns 0 otherwise. This method works in combination with vtkTypeMacro found in vtkSetGet.h.

Reimplemented from vtkDataObjectAlgorithm.

Reimplemented from vtkDataObjectAlgorithm.

Reimplemented from vtkDataObjectAlgorithm.

Reimplemented from vtkDataObjectAlgorithm.

void vtkReebGraphSurfaceSkeletonFilter::PrintSelf ( ostream &  os,
vtkIndent  indent 
) [virtual]

Methods invoked by print to print information about the object including superclasses. Typically not called by the user (use Print() instead) but used in the hierarchical print process to combine the output of several classes.

Reimplemented from vtkDataObjectAlgorithm.

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

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

Set the number of optional smoothing iterations Default value: 30

Set the number of optional smoothing iterations Default value: 30

Set the scalar field Id Default value: 0

Set the scalar field Id Default value: 0

Get the output data object for a port on this algorithm.

Reimplemented from vtkDataObjectAlgorithm.

Fill the input port information objects for this algorithm. This is invoked by the first call to GetInputPortInformation for each port so subclasses can specify what they can handle.

Reimplemented from vtkDataObjectAlgorithm.

Fill the output port information objects for this algorithm. This is invoked by the first call to GetOutputPortInformation for each port so subclasses can specify what they can handle.

Reimplemented from vtkDataObjectAlgorithm.

int vtkReebGraphSurfaceSkeletonFilter::RequestData ( vtkInformation request,
vtkInformationVector **  inputVector,
vtkInformationVector outputVector 
) [protected, virtual]

Reimplemented from vtkDataObjectAlgorithm.


Member Data Documentation

Definition at line 87 of file vtkReebGraphSurfaceSkeletonFilter.h.

Definition at line 88 of file vtkReebGraphSurfaceSkeletonFilter.h.

Definition at line 88 of file vtkReebGraphSurfaceSkeletonFilter.h.


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