VTK  9.3.0
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
38 #ifndef vtkImageRectilinearWipe_h
39 #define vtkImageRectilinearWipe_h
40 
41 #include "vtkImagingHybridModule.h" // For export macro
43 
44 #define VTK_WIPE_QUAD 0
45 #define VTK_WIPE_HORIZONTAL 1
46 #define VTK_WIPE_VERTICAL 2
47 #define VTK_WIPE_LOWER_LEFT 3
48 #define VTK_WIPE_LOWER_RIGHT 4
49 #define VTK_WIPE_UPPER_LEFT 5
50 #define VTK_WIPE_UPPER_RIGHT 6
51 
52 VTK_ABI_NAMESPACE_BEGIN
53 class VTKIMAGINGHYBRID_EXPORT vtkImageRectilinearWipe : public vtkThreadedImageAlgorithm
54 {
55 public:
58  void PrintSelf(ostream& os, vtkIndent indent) override;
59 
61 
65  vtkSetVector2Macro(Position, int);
66  vtkGetVectorMacro(Position, int, 2);
68 
70 
74  vtkSetVector2Macro(Axis, int);
75  vtkGetVectorMacro(Axis, int, 2);
77 
81  virtual void SetInput1Data(vtkDataObject* in) { this->SetInputData(0, in); }
82  virtual void SetInput2Data(vtkDataObject* in) { this->SetInputData(1, in); }
83 
85 
103  vtkSetClampMacro(Wipe, int, VTK_WIPE_QUAD, VTK_WIPE_UPPER_RIGHT);
104  vtkGetMacro(Wipe, int);
105  void SetWipeToQuad() { this->SetWipe(VTK_WIPE_QUAD); }
106  void SetWipeToHorizontal() { this->SetWipe(VTK_WIPE_HORIZONTAL); }
107  void SetWipeToVertical() { this->SetWipe(VTK_WIPE_VERTICAL); }
108  void SetWipeToLowerLeft() { this->SetWipe(VTK_WIPE_LOWER_LEFT); }
109  void SetWipeToLowerRight() { this->SetWipe(VTK_WIPE_LOWER_RIGHT); }
110  void SetWipeToUpperLeft() { this->SetWipe(VTK_WIPE_UPPER_LEFT); }
111  void SetWipeToUpperRight() { this->SetWipe(VTK_WIPE_UPPER_RIGHT); }
113 
114 protected:
116  ~vtkImageRectilinearWipe() override = default;
117 
119  vtkInformationVector* outputVector, vtkImageData*** inData, vtkImageData** outData,
120  int outExt[6], int threadId) override;
121 
122  int Position[2];
123  int Wipe;
124  int Axis[2];
125 
126 private:
128  void operator=(const vtkImageRectilinearWipe&) = delete;
129 };
130 
131 VTK_ABI_NAMESPACE_END
132 #endif
general representation of visualization data
Definition: vtkDataObject.h:55
void SetInputData(vtkDataObject *)
Assign a data object as input.
topologically and geometrically regular array of data
Definition: vtkImageData.h:43
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:29
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