FreeMat
|
Section: Visualization Toolkit Volume Rendering Classes
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.
To create an instance of class vtkFiniteDifferenceGradientEstimator, simply invoke its constructor as follows
obj = vtkFiniteDifferenceGradientEstimator
The class vtkFiniteDifferenceGradientEstimator has several methods that can be used. They are listed below. Note that the documentation is translated automatically from the VTK sources, and may not be completely intelligible. When in doubt, consult the VTK website. In the methods listed below, obj
is an instance of the vtkFiniteDifferenceGradientEstimator class.
string = obj.GetClassName ()
int = obj.IsA (string name)
vtkFiniteDifferenceGradientEstimator = obj.NewInstance ()
vtkFiniteDifferenceGradientEstimator = obj.SafeDownCast (vtkObject o)
obj.SetSampleSpacingInVoxels (int )
- Set/Get the spacing between samples for the finite differences method used to compute the normal. This spacing is in voxel units. int = obj.GetSampleSpacingInVoxels ()
- Set/Get the spacing between samples for the finite differences method used to compute the normal. This spacing is in voxel units.