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