Public Member Functions |
| virtual const char * | GetClassName () |
| virtual int | IsA (const char *type) |
| void | PrintSelf (ostream &os, vtkIndent indent) |
|
| virtual void | SetSampleSpacingInVoxels (int) |
| virtual int | GetSampleSpacingInVoxels () |
| void | Update (void) |
| unsigned short * | GetEncodedNormals (void) |
| unsigned char * | GetGradientMagnitudes (void) |
| virtual int | GetUseCylinderClip () |
| int * | GetCircleLimits () |
| virtual int * | GetInputSize () |
| virtual void | GetInputSize (int data[3]) |
| virtual float * | GetInputAspect () |
| virtual void | GetInputAspect (float data[3]) |
| virtual void | SetInput (vtkImageData *) |
| virtual vtkImageData * | GetInput () |
| virtual void | SetGradientMagnitudeScale (float) |
| virtual float | GetGradientMagnitudeScale () |
| virtual void | SetGradientMagnitudeBias (float) |
| virtual float | GetGradientMagnitudeBias () |
| virtual void | SetBoundsClip (int) |
| virtual int | GetBoundsClip () |
| virtual void | BoundsClipOn () |
| virtual void | BoundsClipOff () |
| virtual void | SetBounds (int, int, int, int, int, int) |
| virtual void | SetBounds (int[6]) |
| virtual int * | GetBounds () |
| virtual void | GetBounds (int data[6]) |
| int | GetEncodedNormalIndex (int xyz_index) |
| int | GetEncodedNormalIndex (int x_index, int y_index, int z_index) |
| virtual void | SetNumberOfThreads (int) |
| virtual int | GetNumberOfThreads () |
| void | SetDirectionEncoder (vtkDirectionEncoder *direnc) |
| virtual vtkDirectionEncoder * | GetDirectionEncoder () |
| virtual void | SetComputeGradientMagnitudes (int) |
| virtual int | GetComputeGradientMagnitudes () |
| virtual void | ComputeGradientMagnitudesOn () |
| virtual void | ComputeGradientMagnitudesOff () |
| virtual void | SetCylinderClip (int) |
| virtual int | GetCylinderClip () |
| virtual void | CylinderClipOn () |
| virtual void | CylinderClipOff () |
| virtual float | GetLastUpdateTimeInSeconds () |
| virtual float | GetLastUpdateTimeInCPUSeconds () |
| void | SetZeroNormalThreshold (float v) |
| virtual float | GetZeroNormalThreshold () |
| virtual void | SetZeroPad (int) |
| virtual int | GetZeroPad () |
| virtual void | ZeroPadOn () |
| virtual void | ZeroPadOff () |
| virtual void | DebugOn () |
| virtual void | DebugOff () |
| unsigned char | GetDebug () |
| void | SetDebug (unsigned char debugFlag) |
| virtual void | Modified () |
| virtual unsigned long | GetMTime () |
| unsigned long | AddObserver (unsigned long event, vtkCommand *, float priority=0.0f) |
| unsigned long | AddObserver (const char *event, vtkCommand *, float priority=0.0f) |
| vtkCommand * | GetCommand (unsigned long tag) |
| void | RemoveObserver (vtkCommand *) |
| void | RemoveObservers (unsigned long event, vtkCommand *) |
| void | RemoveObservers (const char *event, vtkCommand *) |
| int | HasObserver (unsigned long event, vtkCommand *) |
| int | HasObserver (const char *event, vtkCommand *) |
| void | RemoveObserver (unsigned long tag) |
| void | RemoveObservers (unsigned long event) |
| void | RemoveObservers (const char *event) |
| void | RemoveAllObservers () |
| int | HasObserver (unsigned long event) |
| int | HasObserver (const char *event) |
| template<class U , class T > |
| unsigned long | AddObserver (unsigned long event, U observer, void(T::*callback)(), float priority=0.0f) |
| template<class U , class T > |
| unsigned long | AddObserver (unsigned long event, U observer, void(T::*callback)(vtkObject *, unsigned long, void *), float priority=0.0f) |
| int | InvokeEvent (unsigned long event, void *callData) |
| int | InvokeEvent (const char *event, void *callData) |
| int | InvokeEvent (unsigned long event) |
| int | InvokeEvent (const char *event) |
| const char * | GetClassName () const |
| virtual void | Delete () |
| virtual void | FastDelete () |
| void | Print (ostream &os) |
| virtual void | Register (vtkObjectBase *o) |
| virtual void | UnRegister (vtkObjectBase *o) |
| void | SetReferenceCount (int) |
| void | PrintRevisions (ostream &os) |
| virtual void | PrintHeader (ostream &os, vtkIndent indent) |
| virtual void | PrintTrailer (ostream &os, vtkIndent indent) |
| int | GetReferenceCount () |
Use finite differences to estimate gradient.
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
- Tests:
- vtkFiniteDifferenceGradientEstimator (Tests)
Definition at line 46 of file vtkFiniteDifferenceGradientEstimator.h.