00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00031 #ifndef __vtkImageMagnify_h
00032 #define __vtkImageMagnify_h
00033
00034 #include "vtkThreadedImageAlgorithm.h"
00035
00036 class VTK_IMAGING_EXPORT vtkImageMagnify : public vtkThreadedImageAlgorithm
00037 {
00038 public:
00039 static vtkImageMagnify *New();
00040 vtkTypeRevisionMacro(vtkImageMagnify,vtkThreadedImageAlgorithm);
00041 void PrintSelf(ostream& os, vtkIndent indent);
00042
00044
00046 vtkSetVector3Macro(MagnificationFactors,int);
00047 vtkGetVector3Macro(MagnificationFactors,int);
00049
00051
00053 vtkSetMacro(Interpolate,int);
00054 vtkGetMacro(Interpolate,int);
00055 vtkBooleanMacro(Interpolate,int);
00057
00058 protected:
00059 vtkImageMagnify();
00060 ~vtkImageMagnify() {};
00061
00062 int MagnificationFactors[3];
00063 int Interpolate;
00064 virtual int RequestUpdateExtent(vtkInformation *,
00065 vtkInformationVector **,
00066 vtkInformationVector *);
00067 virtual int RequestInformation(vtkInformation *,
00068 vtkInformationVector **,
00069 vtkInformationVector *);
00070
00071 void ThreadedRequestData(vtkInformation *request,
00072 vtkInformationVector **inputVector,
00073 vtkInformationVector *outputVector,
00074 vtkImageData ***inData,
00075 vtkImageData **outData,
00076 int outExt[6],
00077 int id);
00078
00079 void InternalRequestUpdateExtent(int *inExt, int *outExt);
00080
00081 private:
00082 vtkImageMagnify(const vtkImageMagnify&);
00083 void operator=(const vtkImageMagnify&);
00084 };
00085
00086 #endif
00087
00088
00089
00090