VTK  9.3.20240302
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
47 #ifndef vtkRTAnalyticSource_h
48 #define vtkRTAnalyticSource_h
49 
50 #include "vtkImageAlgorithm.h"
51 #include "vtkImagingCoreModule.h" // For export macro
52 
53 VTK_ABI_NAMESPACE_BEGIN
54 class VTKIMAGINGCORE_EXPORT vtkRTAnalyticSource : public vtkImageAlgorithm
55 {
56 public:
59  void PrintSelf(ostream& os, vtkIndent indent) override;
60 
62 
66  void SetWholeExtent(int xMinx, int xMax, int yMin, int yMax, int zMin, int zMax);
67  vtkGetVector6Macro(WholeExtent, int);
69 
71 
74  vtkSetVector3Macro(Center, double);
75  vtkGetVector3Macro(Center, double);
77 
79 
82  vtkSetMacro(Maximum, double);
83  vtkGetMacro(Maximum, double);
85 
87 
90  vtkSetMacro(StandardDeviation, double);
91  vtkGetMacro(StandardDeviation, double);
93 
95 
98  vtkSetMacro(XFreq, double);
99  vtkGetMacro(XFreq, double);
101 
103 
106  vtkSetMacro(YFreq, double);
107  vtkGetMacro(YFreq, double);
109 
111 
114  vtkSetMacro(ZFreq, double);
115  vtkGetMacro(ZFreq, double);
117 
119 
122  vtkSetMacro(XMag, double);
123  vtkGetMacro(XMag, double);
125 
127 
130  vtkSetMacro(YMag, double);
131  vtkGetMacro(YMag, double);
133 
135 
138  vtkSetMacro(ZMag, double);
139  vtkGetMacro(ZMag, double);
141 
143 
146  vtkSetMacro(SubsampleRate, int);
147  vtkGetMacro(SubsampleRate, int);
149 
150 protected:
158 
162  ~vtkRTAnalyticSource() override = default;
163 
164  double XFreq;
165  double YFreq;
166  double ZFreq;
167  double XMag;
168  double YMag;
169  double ZMag;
171  int WholeExtent[6];
172  double Center[3];
173  double Maximum;
175 
177  vtkInformationVector* outputVector) override;
179 
180 private:
181  vtkRTAnalyticSource(const vtkRTAnalyticSource&) = delete;
182  void operator=(const vtkRTAnalyticSource&) = delete;
183 };
184 
185 VTK_ABI_NAMESPACE_END
186 #endif
general representation of visualization data
Generic algorithm superclass for image algs.
a simple class to control print indentation
Definition: vtkIndent.h:108
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