VTK  9.3.0
vtkRTAnalyticSource.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
27 #ifndef vtkRTAnalyticSource_h
28 #define vtkRTAnalyticSource_h
29 
30 #include "vtkImageAlgorithm.h"
31 #include "vtkImagingCoreModule.h" // For export macro
32 
33 VTK_ABI_NAMESPACE_BEGIN
34 class VTKIMAGINGCORE_EXPORT vtkRTAnalyticSource : public vtkImageAlgorithm
35 {
36 public:
39  void PrintSelf(ostream& os, vtkIndent indent) override;
40 
42 
46  void SetWholeExtent(int xMinx, int xMax, int yMin, int yMax, int zMin, int zMax);
47  vtkGetVector6Macro(WholeExtent, int);
49 
51 
54  vtkSetVector3Macro(Center, double);
55  vtkGetVector3Macro(Center, double);
57 
59 
62  vtkSetMacro(Maximum, double);
63  vtkGetMacro(Maximum, double);
65 
67 
70  vtkSetMacro(StandardDeviation, double);
71  vtkGetMacro(StandardDeviation, double);
73 
75 
78  vtkSetMacro(XFreq, double);
79  vtkGetMacro(XFreq, double);
81 
83 
86  vtkSetMacro(YFreq, double);
87  vtkGetMacro(YFreq, double);
89 
91 
94  vtkSetMacro(ZFreq, double);
95  vtkGetMacro(ZFreq, double);
97 
99 
102  vtkSetMacro(XMag, double);
103  vtkGetMacro(XMag, double);
105 
107 
110  vtkSetMacro(YMag, double);
111  vtkGetMacro(YMag, double);
113 
115 
118  vtkSetMacro(ZMag, double);
119  vtkGetMacro(ZMag, double);
121 
123 
126  vtkSetMacro(SubsampleRate, int);
127  vtkGetMacro(SubsampleRate, int);
129 
130 protected:
138 
142  ~vtkRTAnalyticSource() override = default;
143 
144  double XFreq;
145  double YFreq;
146  double ZFreq;
147  double XMag;
148  double YMag;
149  double ZMag;
151  int WholeExtent[6];
152  double Center[3];
153  double Maximum;
155 
157  vtkInformationVector* outputVector) override;
159 
160 private:
161  vtkRTAnalyticSource(const vtkRTAnalyticSource&) = delete;
162  void operator=(const vtkRTAnalyticSource&) = delete;
163 };
164 
165 VTK_ABI_NAMESPACE_END
166 #endif
general representation of visualization data
Definition: vtkDataObject.h:64
Generic algorithm superclass for image algs.
a simple class to control print indentation
Definition: vtkIndent.h:38
Store zero or more vtkInformation instances.
Store vtkAlgorithm input/output information.
Create an image for regression testing.
static vtkRTAnalyticSource * New()
int RequestInformation(vtkInformation *request, vtkInformationVector **inputVector, vtkInformationVector *outputVector) override
Subclasses can reimplement this method to collect information from their inputs and set information f...
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
void ExecuteDataWithInformation(vtkDataObject *data, vtkInformation *outInfo) override
This is a convenience method that is implemented in many subclasses instead of RequestData.
vtkRTAnalyticSource()
Default constructor.
void SetWholeExtent(int xMinx, int xMax, int yMin, int yMax, int zMin, int zMax)
Set/Get the extent of the whole output image.
~vtkRTAnalyticSource() override=default
Destructor.
@ data
Definition: vtkX3D.h:315