VTK  9.5.20250912
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#include "vtkWrappingHints.h" // For VTK_MARSHALAUTO
53
54VTK_ABI_NAMESPACE_BEGIN
55class VTKIMAGINGCORE_EXPORT VTK_MARSHALAUTO vtkRTAnalyticSource : public vtkImageAlgorithm
56{
57public:
60 void PrintSelf(ostream& os, vtkIndent indent) override;
61
63
67 void SetWholeExtent(int xMinx, int xMax, int yMin, int yMax, int zMin, int zMax);
68 vtkGetVector6Macro(WholeExtent, int);
70
72
75 vtkSetVector3Macro(Center, double);
76 vtkGetVector3Macro(Center, double);
78
80
83 vtkSetMacro(Maximum, double);
84 vtkGetMacro(Maximum, double);
86
88
91 vtkSetMacro(StandardDeviation, double);
92 vtkGetMacro(StandardDeviation, double);
94
96
99 vtkSetMacro(XFreq, double);
100 vtkGetMacro(XFreq, double);
102
104
107 vtkSetMacro(YFreq, double);
108 vtkGetMacro(YFreq, double);
110
112
115 vtkSetMacro(ZFreq, double);
116 vtkGetMacro(ZFreq, double);
118
120
123 vtkSetMacro(XMag, double);
124 vtkGetMacro(XMag, double);
126
128
131 vtkSetMacro(YMag, double);
132 vtkGetMacro(YMag, double);
134
136
139 vtkSetMacro(ZMag, double);
140 vtkGetMacro(ZMag, double);
142
144
147 vtkSetMacro(SubsampleRate, int);
148 vtkGetMacro(SubsampleRate, int);
150
151protected:
159
163 ~vtkRTAnalyticSource() override = default;
164
165 double XFreq;
166 double YFreq;
167 double ZFreq;
168 double XMag;
169 double YMag;
170 double ZMag;
172 int WholeExtent[6];
173 double Center[3];
174 double Maximum;
176
178 vtkInformationVector* outputVector) override;
180
181private:
183 void operator=(const vtkRTAnalyticSource&) = delete;
184};
185
186VTK_ABI_NAMESPACE_END
187#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.
int RequestInformation(vtkInformation *request, vtkInformationVector **inputVector, vtkInformationVector *outputVector) override
Subclasses can reimplement this method to collect information from their inputs and set information f...
static vtkRTAnalyticSource * New()
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.
#define VTK_MARSHALAUTO