VTK  9.3.0
vtkFiniteDifferenceGradientEstimator.h
Go to the documentation of this file.
1 // SPDX-FileCopyrightText: Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen
2 // SPDX-License-Identifier: BSD-3-Clause
3 
27 #ifndef vtkFiniteDifferenceGradientEstimator_h
28 #define vtkFiniteDifferenceGradientEstimator_h
29 
31 #include "vtkRenderingVolumeModule.h" // For export macro
32 
33 VTK_ABI_NAMESPACE_BEGIN
34 class VTKRENDERINGVOLUME_EXPORT vtkFiniteDifferenceGradientEstimator
36 {
37 public:
39  void PrintSelf(ostream& os, vtkIndent indent) override;
40 
46 
48 
52  vtkSetMacro(SampleSpacingInVoxels, int);
53  vtkGetMacro(SampleSpacingInVoxels, int);
55 
56  // The sample spacing between samples taken for the normal estimation
58 
59 protected:
62 
66  void UpdateNormals() override;
67 
68 private:
70  void operator=(const vtkFiniteDifferenceGradientEstimator&) = delete;
71 };
72 
73 VTK_ABI_NAMESPACE_END
74 #endif
Superclass for gradient estimation.
Use finite differences to estimate gradient.
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
void UpdateNormals() override
Recompute the encoded normals and gradient magnitudes.
static vtkFiniteDifferenceGradientEstimator * New()
Construct a vtkFiniteDifferenceGradientEstimator with a SampleSpacingInVoxels of 1.
a simple class to control print indentation
Definition: vtkIndent.h:29