vtkRecursiveDividingCubes Class Reference

#include <vtkRecursiveDividingCubes.h>

Inheritance diagram for vtkRecursiveDividingCubes:

Inheritance graph
[legend]
Collaboration diagram for vtkRecursiveDividingCubes:

Collaboration graph
[legend]

List of all members.


Detailed Description

create points lying on isosurface (using recursive approach)

vtkRecursiveDividingCubes is a filter that generates points lying on a surface of constant scalar value (i.e., an isosurface). Dense point clouds (i.e., at screen resolution) will appear as a surface. Less dense clouds can be used as a source to generate streamlines or to generate "transparent" surfaces.

This implementation differs from vtkDividingCubes in that it uses a recursive procedure. In many cases this can result in generating more points than the procedural implementation of vtkDividingCubes. This is because the recursive procedure divides voxels by multiples of powers of two. This can over-constrain subdivision. One of the advantages of the recursive technique is that the recursion is terminated earlier, which in some cases can be more efficient.

See also:
vtkDividingCubes vtkContourFilter vtkMarchingCubes
Tests:
vtkRecursiveDividingCubes (Tests)

Definition at line 46 of file vtkRecursiveDividingCubes.h.


Public Types

typedef vtkPolyDataAlgorithm Superclass

Public Member Functions

virtual const char * GetClassName ()
virtual int IsA (const char *type)
void PrintSelf (ostream &os, vtkIndent indent)
virtual void SetValue (double)
virtual double GetValue ()
virtual void SetDistance (double)
virtual double GetDistance ()
virtual void SetIncrement (int)
virtual int GetIncrement ()

Static Public Member Functions

static vtkRecursiveDividingCubesNew ()
static int IsTypeOf (const char *type)
static vtkRecursiveDividingCubesSafeDownCast (vtkObject *o)

Protected Member Functions

 vtkRecursiveDividingCubes ()
 ~vtkRecursiveDividingCubes ()
virtual int RequestData (vtkInformation *, vtkInformationVector **, vtkInformationVector *)
virtual int FillInputPortInformation (int port, vtkInformation *info)
void SubDivide (double origin[3], double h[3], double values[8])

Protected Attributes

double Value
double Distance
int Increment
int Count
vtkVoxelVoxel

Member Typedef Documentation

Reimplemented from vtkPolyDataAlgorithm.

Definition at line 50 of file vtkRecursiveDividingCubes.h.


Constructor & Destructor Documentation

vtkRecursiveDividingCubes::vtkRecursiveDividingCubes (  )  [protected]

vtkRecursiveDividingCubes::~vtkRecursiveDividingCubes (  )  [protected]


Member Function Documentation

static vtkRecursiveDividingCubes* vtkRecursiveDividingCubes::New (  )  [static]

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

Reimplemented from vtkPolyDataAlgorithm.

virtual const char* vtkRecursiveDividingCubes::GetClassName (  )  [virtual]

Reimplemented from vtkPolyDataAlgorithm.

static int vtkRecursiveDividingCubes::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 vtkTypeRevisionMacro found in vtkSetGet.h.

Reimplemented from vtkPolyDataAlgorithm.

virtual int vtkRecursiveDividingCubes::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 vtkTypeRevisionMacro found in vtkSetGet.h.

Reimplemented from vtkPolyDataAlgorithm.

static vtkRecursiveDividingCubes* vtkRecursiveDividingCubes::SafeDownCast ( vtkObject o  )  [static]

Reimplemented from vtkPolyDataAlgorithm.

void vtkRecursiveDividingCubes::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 vtkPolyDataAlgorithm.

virtual void vtkRecursiveDividingCubes::SetValue ( double   )  [virtual]

Set isosurface value.

virtual double vtkRecursiveDividingCubes::GetValue (  )  [virtual]

Set isosurface value.

virtual void vtkRecursiveDividingCubes::SetDistance ( double   )  [virtual]

Specify sub-voxel size at which to generate point.

virtual double vtkRecursiveDividingCubes::GetDistance (  )  [virtual]

Specify sub-voxel size at which to generate point.

virtual void vtkRecursiveDividingCubes::SetIncrement ( int   )  [virtual]

Every "Increment" point is added to the list of points. This parameter, if set to a large value, can be used to limit the number of points while retaining good accuracy.

virtual int vtkRecursiveDividingCubes::GetIncrement (  )  [virtual]

Every "Increment" point is added to the list of points. This parameter, if set to a large value, can be used to limit the number of points while retaining good accuracy.

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

This is called by the superclass. This is the method you should override.

Reimplemented from vtkPolyDataAlgorithm.

virtual int vtkRecursiveDividingCubes::FillInputPortInformation ( int  port,
vtkInformation info 
) [protected, virtual]

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 vtkPolyDataAlgorithm.

void vtkRecursiveDividingCubes::SubDivide ( double  origin[3],
double  h[3],
double  values[8] 
) [protected]


Member Data Documentation

Definition at line 81 of file vtkRecursiveDividingCubes.h.

Definition at line 82 of file vtkRecursiveDividingCubes.h.

Definition at line 83 of file vtkRecursiveDividingCubes.h.

Definition at line 86 of file vtkRecursiveDividingCubes.h.

Definition at line 89 of file vtkRecursiveDividingCubes.h.


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

Generated on Wed Jun 3 19:30:57 2009 for VTK by  doxygen 1.5.6