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