VTK
vtkImageRectilinearWipe.h
Go to the documentation of this file.
1 /*=========================================================================
2 
3  Program: Visualization Toolkit
4  Module: vtkImageRectilinearWipe.h
5 
6  Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen
7  All rights reserved.
8  See Copyright.txt or http://www.kitware.com/Copyright.htm for details.
9 
10  This software is distributed WITHOUT ANY WARRANTY; without even
11  the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
12  PURPOSE. See the above copyright notice for more information.
13 
14 =========================================================================*/
50 #ifndef vtkImageRectilinearWipe_h
51 #define vtkImageRectilinearWipe_h
52 
53 #include "vtkImagingHybridModule.h" // For export macro
55 
56 #define VTK_WIPE_QUAD 0
57 #define VTK_WIPE_HORIZONTAL 1
58 #define VTK_WIPE_VERTICAL 2
59 #define VTK_WIPE_LOWER_LEFT 3
60 #define VTK_WIPE_LOWER_RIGHT 4
61 #define VTK_WIPE_UPPER_LEFT 5
62 #define VTK_WIPE_UPPER_RIGHT 6
63 
64 class VTKIMAGINGHYBRID_EXPORT vtkImageRectilinearWipe : public vtkThreadedImageAlgorithm
65 {
66 public:
67  static vtkImageRectilinearWipe *New();
69  void PrintSelf(ostream& os, vtkIndent indent) override;
70 
72 
76  vtkSetVector2Macro(Position,int);
77  vtkGetVectorMacro(Position,int,2);
79 
81 
85  vtkSetVector2Macro(Axis,int);
86  vtkGetVectorMacro(Axis,int,2);
88 
92  virtual void SetInput1Data(vtkDataObject *in) { this->SetInputData(0,in); }
93  virtual void SetInput2Data(vtkDataObject *in) { this->SetInputData(1,in); }
94 
96 
114  vtkSetClampMacro(Wipe,int,VTK_WIPE_QUAD,VTK_WIPE_UPPER_RIGHT);
115  vtkGetMacro(Wipe,int);
117  {this->SetWipe(VTK_WIPE_QUAD);}
119  {this->SetWipe(VTK_WIPE_HORIZONTAL);}
121  {this->SetWipe(VTK_WIPE_VERTICAL);}
123  {this->SetWipe(VTK_WIPE_LOWER_LEFT);}
125  {this->SetWipe(VTK_WIPE_LOWER_RIGHT);}
127  {this->SetWipe(VTK_WIPE_UPPER_LEFT);}
129  {this->SetWipe(VTK_WIPE_UPPER_RIGHT);}
131 
132 protected:
135 
136  void ThreadedRequestData(vtkInformation *request,
137  vtkInformationVector **inputVector,
138  vtkInformationVector *outputVector,
139  vtkImageData ***inData,
140  vtkImageData **outData,
141  int extent[6], int threadId) override;
142 
143  int Position[2];
144  int Wipe;
145  int Axis[2];
146 
147 private:
149  void operator=(const vtkImageRectilinearWipe&) = delete;
150 };
151 
152 #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:39
topologically and geometrically regular array of data
Definition: vtkImageData.h:45
#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:64
void SetWipeToQuad()
Specify the wipe mode.