VTK  9.3.20240419
vtkImageSinusoidSource.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
63 #ifndef vtkImageSinusoidSource_h
64 #define vtkImageSinusoidSource_h
65 
66 #include "vtkImageAlgorithm.h"
67 #include "vtkImagingSourcesModule.h" // For export macro
68 
69 VTK_ABI_NAMESPACE_BEGIN
70 class VTKIMAGINGSOURCES_EXPORT vtkImageSinusoidSource : public vtkImageAlgorithm
71 {
72 public:
75  void PrintSelf(ostream& os, vtkIndent indent) override;
76 
80  void SetWholeExtent(int xMinx, int xMax, int yMin, int yMax, int zMin, int zMax);
81 
83 
87  void SetDirection(double, double, double);
88  void SetDirection(double dir[3]);
89  vtkGetVector3Macro(Direction, double);
91 
93 
96  vtkSetMacro(Period, double);
97  vtkGetMacro(Period, double);
99 
101 
104  vtkSetMacro(Phase, double);
105  vtkGetMacro(Phase, double);
107 
109 
112  vtkSetMacro(Amplitude, double);
113  vtkGetMacro(Amplitude, double);
115 
116 protected:
118  ~vtkImageSinusoidSource() override = default;
119 
120  int WholeExtent[6];
121  double Direction[3];
122  double Period;
123  double Phase;
124  double Amplitude;
125 
128 
129 private:
131  void operator=(const vtkImageSinusoidSource&) = delete;
132 };
133 
134 VTK_ABI_NAMESPACE_END
135 #endif
general representation of visualization data
Generic algorithm superclass for image algs.
Create an image with sinusoidal pixel values.
void SetWholeExtent(int xMinx, int xMax, int yMin, int yMax, int zMin, int zMax)
Set/Get the extent of the whole output image.
void ExecuteDataWithInformation(vtkDataObject *data, vtkInformation *outInfo) override
This is a convenience method that is implemented in many subclasses instead of RequestData.
static vtkImageSinusoidSource * New()
~vtkImageSinusoidSource() override=default
int RequestInformation(vtkInformation *, vtkInformationVector **, vtkInformationVector *) override
Subclasses can reimplement this method to collect information from their inputs and set information f...
void SetDirection(double dir[3])
Set/Get the direction vector which determines the sinusoidal orientation.
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
void SetDirection(double, double, double)
Set/Get the direction vector which determines the sinusoidal orientation.
a simple class to control print indentation
Definition: vtkIndent.h:108
Store zero or more vtkInformation instances.
Store vtkAlgorithm input/output information.
@ dir
Definition: vtkX3D.h:324
@ data
Definition: vtkX3D.h:315