00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00049 #ifndef __vtkImageRectilinearWipe_h
00050 #define __vtkImageRectilinearWipe_h
00051
00052 #include "vtkThreadedImageAlgorithm.h"
00053
00054 #define VTK_WIPE_QUAD 0
00055 #define VTK_WIPE_HORIZONTAL 1
00056 #define VTK_WIPE_VERTICAL 2
00057 #define VTK_WIPE_LOWER_LEFT 3
00058 #define VTK_WIPE_LOWER_RIGHT 4
00059 #define VTK_WIPE_UPPER_LEFT 5
00060 #define VTK_WIPE_UPPER_RIGHT 6
00061
00062 class VTK_IMAGING_EXPORT vtkImageRectilinearWipe : public vtkThreadedImageAlgorithm
00063 {
00064 public:
00065 static vtkImageRectilinearWipe *New();
00066 vtkTypeRevisionMacro(vtkImageRectilinearWipe,vtkThreadedImageAlgorithm);
00067 void PrintSelf(ostream& os, vtkIndent indent);
00068
00070
00072 vtkSetVector2Macro(Position,int);
00073 vtkGetVectorMacro(Position,int,2);
00075
00077
00078 virtual void SetInput1(vtkDataObject *in) { this->SetInput(0,in); }
00079 virtual void SetInput2(vtkDataObject *in) { this->SetInput(1,in); }
00081
00083
00097 vtkSetClampMacro(Wipe,int,VTK_WIPE_QUAD,VTK_WIPE_UPPER_RIGHT);
00098 vtkGetMacro(Wipe,int);
00099 void SetWipeToQuad()
00100 {this->SetWipe(VTK_WIPE_QUAD);}
00101 void SetWipeToHorizontal()
00102 {this->SetWipe(VTK_WIPE_HORIZONTAL);}
00103 void SetWipeToVertical()
00104 {this->SetWipe(VTK_WIPE_VERTICAL);}
00105 void SetWipeToLowerLeft()
00106 {this->SetWipe(VTK_WIPE_LOWER_LEFT);}
00107 void SetWipeToLowerRight()
00108 {this->SetWipe(VTK_WIPE_LOWER_RIGHT);}
00109 void SetWipeToUpperLeft()
00110 {this->SetWipe(VTK_WIPE_UPPER_LEFT);}
00111 void SetWipeToUpperRight()
00112 {this->SetWipe(VTK_WIPE_UPPER_RIGHT);}
00114
00115 protected:
00116 vtkImageRectilinearWipe();
00117 ~vtkImageRectilinearWipe() {};
00118
00119 virtual void ThreadedRequestData(vtkInformation *request,
00120 vtkInformationVector **inputVector,
00121 vtkInformationVector *outputVector,
00122 vtkImageData ***inData,
00123 vtkImageData **outData,
00124 int extent[6], int threadId);
00125
00126 int Position[2];
00127 int Wipe;
00128
00129 private:
00130 vtkImageRectilinearWipe(const vtkImageRectilinearWipe&);
00131 void operator=(const vtkImageRectilinearWipe&);
00132 };
00133
00134 #endif