VTK  9.3.20240419
vtkImageRectilinearWipe.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
57 #ifndef vtkImageRectilinearWipe_h
58 #define vtkImageRectilinearWipe_h
59 
60 #include "vtkImagingHybridModule.h" // For export macro
62 
63 #define VTK_WIPE_QUAD 0
64 #define VTK_WIPE_HORIZONTAL 1
65 #define VTK_WIPE_VERTICAL 2
66 #define VTK_WIPE_LOWER_LEFT 3
67 #define VTK_WIPE_LOWER_RIGHT 4
68 #define VTK_WIPE_UPPER_LEFT 5
69 #define VTK_WIPE_UPPER_RIGHT 6
70 
71 VTK_ABI_NAMESPACE_BEGIN
72 class VTKIMAGINGHYBRID_EXPORT vtkImageRectilinearWipe : public vtkThreadedImageAlgorithm
73 {
74 public:
77  void PrintSelf(ostream& os, vtkIndent indent) override;
78 
80 
84  vtkSetVector2Macro(Position, int);
85  vtkGetVectorMacro(Position, int, 2);
87 
89 
93  vtkSetVector2Macro(Axis, int);
94  vtkGetVectorMacro(Axis, int, 2);
96 
100  virtual void SetInput1Data(vtkDataObject* in) { this->SetInputData(0, in); }
101  virtual void SetInput2Data(vtkDataObject* in) { this->SetInputData(1, in); }
102 
104 
122  vtkSetClampMacro(Wipe, int, VTK_WIPE_QUAD, VTK_WIPE_UPPER_RIGHT);
123  vtkGetMacro(Wipe, int);
124  void SetWipeToQuad() { this->SetWipe(VTK_WIPE_QUAD); }
125  void SetWipeToHorizontal() { this->SetWipe(VTK_WIPE_HORIZONTAL); }
126  void SetWipeToVertical() { this->SetWipe(VTK_WIPE_VERTICAL); }
127  void SetWipeToLowerLeft() { this->SetWipe(VTK_WIPE_LOWER_LEFT); }
128  void SetWipeToLowerRight() { this->SetWipe(VTK_WIPE_LOWER_RIGHT); }
129  void SetWipeToUpperLeft() { this->SetWipe(VTK_WIPE_UPPER_LEFT); }
130  void SetWipeToUpperRight() { this->SetWipe(VTK_WIPE_UPPER_RIGHT); }
132 
133 protected:
135  ~vtkImageRectilinearWipe() override = default;
136 
138  vtkInformationVector* outputVector, vtkImageData*** inData, vtkImageData** outData,
139  int outExt[6], int threadId) override;
140 
141  int Position[2];
142  int Wipe;
143  int Axis[2];
144 
145 private:
147  void operator=(const vtkImageRectilinearWipe&) = delete;
148 };
149 
150 VTK_ABI_NAMESPACE_END
151 #endif
general representation of visualization data
void SetInputData(vtkDataObject *)
Assign a data object as input.
topologically and geometrically regular array of data
Definition: vtkImageData.h:156
make a rectilinear combination of two images.
~vtkImageRectilinearWipe() override=default
void SetWipeToVertical()
Specify the wipe mode.
void ThreadedRequestData(vtkInformation *request, vtkInformationVector **inputVector, vtkInformationVector *outputVector, vtkImageData ***inData, vtkImageData **outData, int outExt[6], int threadId) override
If the subclass does not define an Execute method, then the task will be broken up,...
void SetWipeToUpperRight()
Specify the wipe mode.
void SetWipeToQuad()
Specify the wipe mode.
virtual void SetInput1Data(vtkDataObject *in)
Set the two inputs to this filter.
void SetWipeToLowerLeft()
Specify the wipe mode.
virtual void SetInput2Data(vtkDataObject *in)
void SetWipeToHorizontal()
Specify the wipe mode.
static vtkImageRectilinearWipe * New()
void SetWipeToLowerRight()
Specify the wipe mode.
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
void SetWipeToUpperLeft()
Specify the wipe mode.
a simple class to control print indentation
Definition: vtkIndent.h:108
Store zero or more vtkInformation instances.
Store vtkAlgorithm input/output information.
Generic filter that has one input.
#define VTK_WIPE_VERTICAL
#define VTK_WIPE_HORIZONTAL
#define VTK_WIPE_UPPER_RIGHT
#define VTK_WIPE_LOWER_RIGHT
#define VTK_WIPE_QUAD
#define VTK_WIPE_LOWER_LEFT
#define VTK_WIPE_UPPER_LEFT