VTK
dox/Rendering/Volume/vtkFiniteDifferenceGradientEstimator.h
Go to the documentation of this file.
00001 /*=========================================================================
00002 
00003   Program:   Visualization Toolkit
00004   Module:    vtkFiniteDifferenceGradientEstimator.h
00005 
00006   Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen
00007   All rights reserved.
00008   See Copyright.txt or http://www.kitware.com/Copyright.htm for details.
00009 
00010      This software is distributed WITHOUT ANY WARRANTY; without even
00011      the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
00012      PURPOSE.  See the above copyright notice for more information.
00013 
00014 =========================================================================*/
00015 
00041 #ifndef __vtkFiniteDifferenceGradientEstimator_h
00042 #define __vtkFiniteDifferenceGradientEstimator_h
00043 
00044 #include "vtkRenderingVolumeModule.h" // For export macro
00045 #include "vtkEncodedGradientEstimator.h"
00046 
00047 class VTKRENDERINGVOLUME_EXPORT vtkFiniteDifferenceGradientEstimator : public vtkEncodedGradientEstimator
00048 {
00049 public:
00050   vtkTypeMacro(vtkFiniteDifferenceGradientEstimator,vtkEncodedGradientEstimator);
00051   void PrintSelf( ostream& os, vtkIndent indent );
00052 
00055   static vtkFiniteDifferenceGradientEstimator *New();
00056 
00058 
00060   vtkSetMacro( SampleSpacingInVoxels, int );
00061   vtkGetMacro( SampleSpacingInVoxels, int );
00063 
00064   // The sample spacing between samples taken for the normal estimation
00065   int SampleSpacingInVoxels;
00066 
00067 protected:
00068   vtkFiniteDifferenceGradientEstimator();
00069   ~vtkFiniteDifferenceGradientEstimator();
00070 
00071 
00073 
00074   void UpdateNormals( void );
00075 private:
00076   vtkFiniteDifferenceGradientEstimator(const vtkFiniteDifferenceGradientEstimator&);  // Not implemented.
00077   void operator=(const vtkFiniteDifferenceGradientEstimator&);  // Not implemented.
00078 };
00080 
00081 
00082 #endif