VTK  9.3.1
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:
56  static vtkImageRectilinearWipe* New();
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 
118  void ThreadedRequestData(vtkInformation* request, vtkInformationVector** inputVector,
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
Store vtkAlgorithm input/output information.
void SetWipeToVertical()
Specify the wipe mode.
#define VTK_WIPE_LOWER_LEFT
virtual void SetInput1Data(vtkDataObject *in)
Set the two inputs to this filter.
#define VTK_WIPE_LOWER_RIGHT
void SetInputData(vtkDataObject *)
Assign a data object as input.
void SetWipeToUpperLeft()
Specify the wipe mode.
#define VTK_WIPE_UPPER_RIGHT
Generic filter that has one input.
void SetWipeToLowerRight()
Specify the wipe mode.
a simple class to control print indentation
Definition: vtkIndent.h:28
topologically and geometrically regular array of data
Definition: vtkImageData.h:42
#define VTK_WIPE_VERTICAL
#define VTK_WIPE_UPPER_LEFT
make a rectilinear combination of two images.
void SetWipeToUpperRight()
Specify the wipe mode.
virtual void ThreadedRequestData(vtkInformation *request, vtkInformationVector **inputVector, vtkInformationVector *outputVector, vtkImageData ***inData, vtkImageData **outData, int extent[6], int threadId)
If the subclass does not define an Execute method, then the task will be broken up, multiple threads will be spawned, and each thread will call this method.
virtual void SetInput2Data(vtkDataObject *in)
Store zero or more vtkInformation instances.
static vtkAlgorithm * New()
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
#define VTK_WIPE_QUAD
void SetWipeToLowerLeft()
Specify the wipe mode.
#define VTK_WIPE_HORIZONTAL
void SetWipeToHorizontal()
Specify the wipe mode.
general representation of visualization data
Definition: vtkDataObject.h:54
void SetWipeToQuad()
Specify the wipe mode.