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
18 #ifndef vtkRTAnalyticSource_h
19 #define vtkRTAnalyticSource_h
20 
21 #include "vtkImageAlgorithm.h"
22 #include "vtkImagingCoreModule.h" // For export macro
23 
24 VTK_ABI_NAMESPACE_BEGIN
25 class VTKIMAGINGCORE_EXPORT vtkRTAnalyticSource : public vtkImageAlgorithm
26 {
27 public:
30  void PrintSelf(ostream& os, vtkIndent indent) override;
31 
33 
37  void SetWholeExtent(int xMinx, int xMax, int yMin, int yMax, int zMin, int zMax);
38  vtkGetVector6Macro(WholeExtent, int);
40 
42 
45  vtkSetVector3Macro(Center, double);
46  vtkGetVector3Macro(Center, double);
48 
50 
53  vtkSetMacro(Maximum, double);
54  vtkGetMacro(Maximum, double);
56 
58 
61  vtkSetMacro(StandardDeviation, double);
62  vtkGetMacro(StandardDeviation, double);
64 
66 
69  vtkSetMacro(XFreq, double);
70  vtkGetMacro(XFreq, double);
72 
74 
77  vtkSetMacro(YFreq, double);
78  vtkGetMacro(YFreq, double);
80 
82 
85  vtkSetMacro(ZFreq, double);
86  vtkGetMacro(ZFreq, double);
88 
90 
93  vtkSetMacro(XMag, double);
94  vtkGetMacro(XMag, double);
96 
98 
101  vtkSetMacro(YMag, double);
102  vtkGetMacro(YMag, double);
104 
106 
109  vtkSetMacro(ZMag, double);
110  vtkGetMacro(ZMag, double);
112 
114 
117  vtkSetMacro(SubsampleRate, int);
118  vtkGetMacro(SubsampleRate, int);
120 
121 protected:
129 
133  ~vtkRTAnalyticSource() override = default;
134 
135  double XFreq;
136  double YFreq;
137  double ZFreq;
138  double XMag;
139  double YMag;
140  double ZMag;
142  int WholeExtent[6];
143  double Center[3];
144  double Maximum;
146 
148  vtkInformationVector* outputVector) override;
150 
151 private:
152  vtkRTAnalyticSource(const vtkRTAnalyticSource&) = delete;
153  void operator=(const vtkRTAnalyticSource&) = delete;
154 };
155 
156 VTK_ABI_NAMESPACE_END
157 #endif
general representation of visualization data
Definition: vtkDataObject.h:55
Generic algorithm superclass for image algs.
a simple class to control print indentation
Definition: vtkIndent.h:29
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