Imaging/vtkImageClip.h
Go to the documentation of this file.00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00037 #ifndef __vtkImageClip_h
00038 #define __vtkImageClip_h
00039
00040
00041
00042
00043 #include "vtkImageToImageFilter.h"
00044
00045 class VTK_IMAGING_EXPORT vtkImageClip : public vtkImageToImageFilter
00046 {
00047 public:
00048 static vtkImageClip *New();
00049 vtkTypeRevisionMacro(vtkImageClip,vtkImageToImageFilter);
00050 void PrintSelf(ostream& os, vtkIndent indent);
00051
00053
00054 void SetOutputWholeExtent(int extent[6]);
00055 void SetOutputWholeExtent(int minX, int maxX, int minY, int maxY,
00056 int minZ, int maxZ);
00057 void GetOutputWholeExtent(int extent[6]);
00058 int *GetOutputWholeExtent() {return this->OutputWholeExtent;}
00060
00061 void ResetOutputWholeExtent();
00062
00064
00067 vtkSetMacro(ClipData, int);
00068 vtkGetMacro(ClipData, int);
00069 vtkBooleanMacro(ClipData, int);
00071
00073 void SetOutputWholeExtent(int piece, int numPieces);
00074
00075 protected:
00076 vtkImageClip();
00077 ~vtkImageClip() {};
00078
00079
00080 vtkTimeStamp CTime;
00081 int Initialized;
00082 int OutputWholeExtent[6];
00083
00084 int ClipData;
00085
00086 void ExecuteInformation(vtkImageData *inData, vtkImageData *outData);
00087 void ExecuteInformation(){this->vtkImageToImageFilter::ExecuteInformation();};
00088 void CopyData(vtkImageData *inData, vtkImageData *outData, int *ext);
00089
00090 int SplitExtentTmp(int piece, int numPieces, int *ext);
00091
00092 virtual void ExecuteData(vtkDataObject *out);
00093 private:
00094 vtkImageClip(const vtkImageClip&);
00095 void operator=(const vtkImageClip&);
00096 };
00097
00098
00099
00100 #endif
00101
00102
00103