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

create points laying on isosurface (using recursive approach) More...

#include <vtkRecursiveDividingCubes.h>

Inherits vtkPolyDataAlgorithm.

Public Types

typedef vtkPolyDataAlgorithm Superclass
 

Public Member Functions

virtual int IsA (const char *type)
 
vtkRecursiveDividingCubesNewInstance () const
 
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 (vtkObjectBase *o)
 

Protected Member Functions

virtual vtkObjectBase * NewInstanceInternal () const
 
 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
 
vtkVoxel * Voxel
 

Detailed Description

create points laying on isosurface (using recursive approach)

vtkRecursiveDividingCubes is a filter that generates points laying 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 47 of file vtkRecursiveDividingCubes.h.

Member Typedef Documentation

typedef vtkPolyDataAlgorithm vtkRecursiveDividingCubes::Superclass

Definition at line 51 of file vtkRecursiveDividingCubes.h.

Constructor & Destructor Documentation

vtkRecursiveDividingCubes::vtkRecursiveDividingCubes ( )
protected
vtkRecursiveDividingCubes::~vtkRecursiveDividingCubes ( )
protected

Member Function Documentation

static vtkRecursiveDividingCubes* vtkRecursiveDividingCubes::New ( )
static
static int vtkRecursiveDividingCubes::IsTypeOf ( const char *  type)
static
virtual int vtkRecursiveDividingCubes::IsA ( const char *  type)
virtual
static vtkRecursiveDividingCubes* vtkRecursiveDividingCubes::SafeDownCast ( vtkObjectBase *  o)
static
virtual vtkObjectBase* vtkRecursiveDividingCubes::NewInstanceInternal ( ) const
protectedvirtual
vtkRecursiveDividingCubes* vtkRecursiveDividingCubes::NewInstance ( ) const
void vtkRecursiveDividingCubes::PrintSelf ( ostream &  os,
vtkIndent  indent 
)
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 *  ,
vtkInformationVector **  ,
vtkInformationVector *   
)
protectedvirtual
virtual int vtkRecursiveDividingCubes::FillInputPortInformation ( int  port,
vtkInformation *  info 
)
protectedvirtual
void vtkRecursiveDividingCubes::SubDivide ( double  origin[3],
double  h[3],
double  values[8] 
)
protected

Member Data Documentation

double vtkRecursiveDividingCubes::Value
protected

Definition at line 82 of file vtkRecursiveDividingCubes.h.

double vtkRecursiveDividingCubes::Distance
protected

Definition at line 83 of file vtkRecursiveDividingCubes.h.

int vtkRecursiveDividingCubes::Increment
protected

Definition at line 84 of file vtkRecursiveDividingCubes.h.

int vtkRecursiveDividingCubes::Count
protected

Definition at line 87 of file vtkRecursiveDividingCubes.h.

vtkVoxel* vtkRecursiveDividingCubes::Voxel
protected

Definition at line 90 of file vtkRecursiveDividingCubes.h.


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