Main Page Class Hierarchy Alphabetical List Compound List File List Compound Members File Members Related Pages

# vtkImplicitVolume Class Reference

`#include <vtkImplicitVolume.h>`

Inheritance diagram for vtkImplicitVolume:

[legend]
Collaboration diagram for vtkImplicitVolume:

[legend]
List of all members.

## Detailed Description

treat a volume as if it were an implicit function

Date:
  2002/10/04 20:43:44

Revision:
  1.32

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

Created by:
  - Lorensen, Bill

CVS contributions (if > 5%):
  - Lorensen, Bill (38%)
  - Schroeder, Will (21%)
  - Gobbi, David (12%)
  - Law, Charles (7%)

CVS logs (CVSweb):
  - .`h` (`/Filtering/vtkImplicitVolume.h)`
  - .`cxx` (`/Filtering/vtkImplicitVolume.cxx)`

Tests:
  vtkImplicitVolume (Tests)

Definition at line 67 of file vtkImplicitVolume.h.

## Public Types

typedef vtkImplicitFunction | Superclass

## Public Methods

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

## Static Public Methods

int | IsTypeOf (const char *type)
vtkImplicitVolume * | SafeDownCast (vtkObject *o)
vtkImplicitVolume * | New ()

## Protected Methods

| vtkImplicitVolume ()
| ~vtkImplicitVolume ()

## Protected Attributes

vtkImageData * | Volume
float | OutValue
float | OutGradient [3]
vtkIdList * | PointIds

## Member Typedef Documentation

typedef vtkImplicitFunction vtkImplicitVolume::Superclass

| Reimplemented from vtkImplicitFunction. Definition at line 70 of file vtkImplicitVolume.h.

## Constructor & Destructor Documentation

vtkImplicitVolume::vtkImplicitVolume | ( |  | ) | `[protected]`

vtkImplicitVolume::~vtkImplicitVolume | ( |  | ) | `[protected]`

## Member Function Documentation

virtual const char* vtkImplicitVolume::GetClassName | ( |  | ) | `[virtual]`

| Reimplemented from vtkImplicitFunction.

int vtkImplicitVolume::IsTypeOf | ( | const char * | type | ) | `[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 vtkImplicitFunction.

virtual int vtkImplicitVolume::IsA | ( | const char * | type | ) | `[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 vtkImplicitFunction.

vtkImplicitVolume* vtkImplicitVolume::SafeDownCast | ( | vtkObject * | o | ) | `[static]`

| Reimplemented from vtkImplicitFunction.

void vtkImplicitVolume::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 vtkImplicitFunction.

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). Reimplemented from vtkObject.

unsigned long vtkImplicitVolume::GetMTime | ( |  | ) | `[virtual]`

| 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. Reimplemented from vtkImplicitFunction.

float vtkImplicitVolume::EvaluateFunction | ( | float | x[3] | ) | `[virtual]`

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

float vtkImplicitVolume::EvaluateFunction | ( | float | x,
|  | float | y,
|  | float | z
| ) | `[inline]`

| Evaluate the ImplicitVolume. This returns the interpolated scalar value at x[3]. Reimplemented from vtkImplicitFunction. Definition at line 86 of file vtkImplicitVolume.h. References vtkImplicitFunction::EvaluateFunction().

void vtkImplicitVolume::EvaluateGradient | ( | float | x[3],
|  | float | n[3]
| ) | `[virtual]`

| Evaluate ImplicitVolume gradient. Implements vtkImplicitFunction.

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 | ( | float |  | ) | `[virtual]`

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

virtual float vtkImplicitVolume::GetOutValue | ( |  | ) | `[virtual]`

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

virtual void vtkImplicitVolume::SetOutGradient | ( | float | ,
|  | float | ,
|  | float |
| ) | `[virtual]`

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

virtual void vtkImplicitVolume::SetOutGradient | ( | float | [3] | ) | `[virtual]`

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

virtual float* vtkImplicitVolume::GetOutGradient | ( |  | ) | `[virtual]`

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

virtual void vtkImplicitVolume::GetOutGradient | ( | float & | ,
|  | float & | ,
|  | float & |
| ) | `[virtual]`

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

virtual void vtkImplicitVolume::GetOutGradient | ( | float | [3] | ) | `[virtual]`

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

## Member Data Documentation

vtkImageData* vtkImplicitVolume::Volume`[protected]`

| Definition at line 115 of file vtkImplicitVolume.h.

float vtkImplicitVolume::OutValue`[protected]`

| Definition at line 116 of file vtkImplicitVolume.h.

float vtkImplicitVolume::OutGradient[3]`[protected]`

| Definition at line 117 of file vtkImplicitVolume.h.

vtkIdList* vtkImplicitVolume::PointIds`[protected]`

| Definition at line 119 of file vtkImplicitVolume.h.

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

- Filtering/vtkImplicitVolume.h