Documentation for vtkFiniteDifferenceGradientEstimator

vtkFiniteDifferenceGradientEstimator - Use finite differences to estimate gradient.

Super Class: vtkEncodedGradientEstimator

Description:

vtkFiniteDifferenceGradientEstimator is a concrete subclass of vtkEncodedGradientEstimator that uses a central differences technique to estimate the gradient. The gradient at some sample location (x,y,z) would be estimated by: nx = (f(x-dx,y,z) - f(x+dx,y,z)) / 2*dx; ny = (f(x,y-dy,z) - f(x,y+dy,z)) / 2*dy; nz = (f(x,y,z-dz) - f(x,y,z+dz)) / 2*dz; This value is normalized to determine a unit direction vector and a magnitude. The normal is computed in voxel space, and dx = dy = dz = SampleSpacingInVoxels. A scaling factor is applied to convert this normal from voxel space to world coordinates.

 

See Also:

vtkEncodedGradientEstimator

 

Methods:

void vtkFiniteDifferenceGradientEstimator ()
void vtkFiniteDifferenceGradientEstimator ()
const char *GetClassName ()
void PrintSelf (unknown & ,vtkIndent )
static vtkFiniteDifferenceGradientEstimator *New ()
void SetSampleSpacingInVoxels (int )
int GetSampleSpacingInVoxels ()
void UpdateNormals ()

 

Detailed Method Descriptions:

Construct a vtkFiniteDifferenceGradientEstimator with a SampleSpacingInVoxels of 1.

static vtkFiniteDifferenceGradientEstimator *New ()

Set/Get the spacing between samples for the finite differences method used to compute the normal. This spacing is in voxel units.

void SetSampleSpacingInVoxels (int )
int GetSampleSpacingInVoxels ()

Recompute the encoded normals and gradient magnitudes.

void UpdateNormals ()