VTK  9.3.0
vtkImageButterworthLowPass.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
22 #ifndef vtkImageButterworthLowPass_h
23 #define vtkImageButterworthLowPass_h
24 
25 #include "vtkImagingFourierModule.h" // For export macro
27 
28 VTK_ABI_NAMESPACE_BEGIN
29 class VTKIMAGINGFOURIER_EXPORT vtkImageButterworthLowPass : public vtkThreadedImageAlgorithm
30 {
31 public:
34  void PrintSelf(ostream& os, vtkIndent indent) override;
35 
37 
42  vtkSetVector3Macro(CutOff, double);
43  void SetCutOff(double v) { this->SetCutOff(v, v, v); }
44  void SetXCutOff(double cutOff);
45  void SetYCutOff(double cutOff);
46  void SetZCutOff(double cutOff);
47  vtkGetVector3Macro(CutOff, double);
48  double GetXCutOff() { return this->CutOff[0]; }
49  double GetYCutOff() { return this->CutOff[1]; }
50  double GetZCutOff() { return this->CutOff[2]; }
52 
54 
57  vtkSetMacro(Order, int);
58  vtkGetMacro(Order, int);
60 
61 protected:
63  ~vtkImageButterworthLowPass() override = default;
64 
65  int Order;
66  double CutOff[3];
67 
69  vtkInformationVector* outputVector, vtkImageData*** inData, vtkImageData** outData,
70  int outExt[6], int id) override;
71 
72 private:
74  void operator=(const vtkImageButterworthLowPass&) = delete;
75 };
76 
77 VTK_ABI_NAMESPACE_END
78 #endif
Frequency domain Low pass.
void SetZCutOff(double cutOff)
Set/Get the cutoff frequency for each axis.
void ThreadedRequestData(vtkInformation *request, vtkInformationVector **inputVector, vtkInformationVector *outputVector, vtkImageData ***inData, vtkImageData **outData, int outExt[6], int id) override
If the subclass does not define an Execute method, then the task will be broken up,...
double GetZCutOff()
Set/Get the cutoff frequency for each axis.
double GetXCutOff()
Set/Get the cutoff frequency for each axis.
void SetYCutOff(double cutOff)
Set/Get the cutoff frequency for each axis.
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
void SetXCutOff(double cutOff)
Set/Get the cutoff frequency for each axis.
static vtkImageButterworthLowPass * New()
void SetCutOff(double v)
Set/Get the cutoff frequency for each axis.
~vtkImageButterworthLowPass() override=default
double GetYCutOff()
Set/Get the cutoff frequency for each axis.
topologically and geometrically regular array of data
Definition: vtkImageData.h:43
a simple class to control print indentation
Definition: vtkIndent.h:29
Store zero or more vtkInformation instances.
Store vtkAlgorithm input/output information.
Generic filter that has one input.