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

treat a volume as if it were an implicit function More...

#include <vtkImplicitVolume.h>

Inherits vtkImplicitFunction.

Public Types

typedef vtkImplicitFunction Superclass
 

Public Member Functions

virtual int IsA (const char *type)
 
vtkImplicitVolumeNewInstance () const
 
void PrintSelf (ostream &os, vtkIndent indent)
 
unsigned long GetMTime ()
 
void EvaluateGradient (double x[3], double n[3])
 
double EvaluateFunction (double x[3])
 
double EvaluateFunction (double x, double y, double z)
 
virtual void SetVolume (vtkImageData *)
 
virtual vtkImageData * GetVolume ()
 
virtual void SetOutValue (double)
 
virtual double GetOutValue ()
 
virtual void SetOutGradient (double, double, double)
 
virtual void SetOutGradient (double[3])
 
virtual double * GetOutGradient ()
 
virtual void GetOutGradient (double &, double &, double &)
 
virtual void GetOutGradient (double[3])
 

Static Public Member Functions

static int IsTypeOf (const char *type)
 
static vtkImplicitVolumeSafeDownCast (vtkObjectBase *o)
 
static vtkImplicitVolumeNew ()
 

Protected Member Functions

virtual vtkObjectBase * NewInstanceInternal () const
 
 vtkImplicitVolume ()
 
 ~vtkImplicitVolume ()
 

Protected Attributes

vtkImageData * Volume
 
double OutValue
 
double OutGradient [3]
 
vtkIdList * PointIds
 

Detailed Description

treat a volume as if it were an implicit function

vtkImplicitVolume treats a volume (e.g., structured point dataset) as if it were an implicit function. This means it computes a function value and gradient. vtkImplicitVolume is a concrete implementation of vtkImplicitFunction.

vtkImplicitDataSet computes the function (at the point x) by performing cell interpolation. That is, it finds the cell containing x, and then uses the cell's interpolation functions to compute an interpolated scalar value at x. (A similar approach is used to find the gradient, if requested.) Points outside of the dataset are assigned the value of the ivar OutValue, and the gradient value OutGradient.

Warning
The input volume data is only updated when GetMTime() is called. Works for 3D structured points datasets, 0D-2D datasets won't work properly.
See Also
vtkImplicitFunction vtkImplicitDataSet vtkClipPolyData vtkCutter vtkImplicitWindowFunction

Definition at line 48 of file vtkImplicitVolume.h.

Member Typedef Documentation

typedef vtkImplicitFunction vtkImplicitVolume::Superclass

Definition at line 51 of file vtkImplicitVolume.h.

Constructor & Destructor Documentation

vtkImplicitVolume::vtkImplicitVolume ( )
protected
vtkImplicitVolume::~vtkImplicitVolume ( )
protected

Member Function Documentation

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

Construct an vtkImplicitVolume with no initial volume; the OutValue set to a large negative number; and the OutGradient set to (0,0,1).

unsigned long vtkImplicitVolume::GetMTime ( )

Returns the mtime also considering the volume. This also calls Update on the volume, and it therefore must be called before the function is evaluated.

double vtkImplicitVolume::EvaluateFunction ( double  x[3])

Evaluate the ImplicitVolume. This returns the interpolated scalar value at x[3].

double vtkImplicitVolume::EvaluateFunction ( double  x,
double  y,
double  z 
)
inline

Evaluate the ImplicitVolume. This returns the interpolated scalar value at x[3].

Definition at line 67 of file vtkImplicitVolume.h.

void vtkImplicitVolume::EvaluateGradient ( double  x[3],
double  n[3] 
)

Evaluate ImplicitVolume gradient.

virtual void vtkImplicitVolume::SetVolume ( vtkImageData *  )
virtual

Specify the volume for the implicit function.

virtual vtkImageData* vtkImplicitVolume::GetVolume ( )
virtual

Specify the volume for the implicit function.

virtual void vtkImplicitVolume::SetOutValue ( double  )
virtual

Set the function value to use for points outside of the dataset.

virtual double vtkImplicitVolume::GetOutValue ( )
virtual

Set the function value to use for points outside of the dataset.

virtual void vtkImplicitVolume::SetOutGradient ( double  ,
double  ,
double   
)
virtual

Set the function gradient to use for points outside of the dataset.

virtual void vtkImplicitVolume::SetOutGradient ( double  [3])
virtual

Set the function gradient to use for points outside of the dataset.

virtual double* vtkImplicitVolume::GetOutGradient ( )
virtual

Set the function gradient to use for points outside of the dataset.

virtual void vtkImplicitVolume::GetOutGradient ( double &  ,
double &  ,
double &   
)
virtual

Set the function gradient to use for points outside of the dataset.

virtual void vtkImplicitVolume::GetOutGradient ( double  [3])
virtual

Set the function gradient to use for points outside of the dataset.

Member Data Documentation

vtkImageData* vtkImplicitVolume::Volume
protected

Definition at line 96 of file vtkImplicitVolume.h.

double vtkImplicitVolume::OutValue
protected

Definition at line 97 of file vtkImplicitVolume.h.

double vtkImplicitVolume::OutGradient[3]
protected

Definition at line 98 of file vtkImplicitVolume.h.

vtkIdList* vtkImplicitVolume::PointIds
protected

Definition at line 100 of file vtkImplicitVolume.h.


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