00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00026 #ifndef __vtkImageChangeInformation_h
00027 #define __vtkImageChangeInformation_h
00028
00029 #include "vtkImageAlgorithm.h"
00030
00031 class vtkImageData;
00032
00033 class VTK_IMAGING_EXPORT vtkImageChangeInformation : public vtkImageAlgorithm
00034 {
00035 public:
00036 static vtkImageChangeInformation *New();
00037 vtkTypeRevisionMacro(vtkImageChangeInformation, vtkImageAlgorithm);
00038 void PrintSelf(ostream& os, vtkIndent indent);
00039
00041
00043 virtual void SetInformationInput(vtkImageData*);
00044 virtual vtkImageData *GetInformationInput();
00046
00048
00052 vtkSetVector3Macro(OutputExtentStart, int);
00053 vtkGetVector3Macro(OutputExtentStart, int);
00055
00057
00060 vtkSetVector3Macro(OutputSpacing, double);
00061 vtkGetVector3Macro(OutputSpacing, double);
00063
00065
00068 vtkSetVector3Macro(OutputOrigin, double);
00069 vtkGetVector3Macro(OutputOrigin, double);
00071
00073
00077 vtkSetMacro(CenterImage, int);
00078 vtkBooleanMacro(CenterImage, int);
00079 vtkGetMacro(CenterImage, int);
00081
00083
00084 vtkSetVector3Macro(ExtentTranslation, int);
00085 vtkGetVector3Macro(ExtentTranslation, int);
00087
00089
00090 vtkSetVector3Macro(SpacingScale, double);
00091 vtkGetVector3Macro(SpacingScale, double);
00093
00095
00096 vtkSetVector3Macro(OriginTranslation, double);
00097 vtkGetVector3Macro(OriginTranslation, double);
00099
00101
00103 vtkSetVector3Macro(OriginScale, double);
00104 vtkGetVector3Macro(OriginScale, double);
00106
00107 protected:
00108 vtkImageChangeInformation();
00109 ~vtkImageChangeInformation();
00110
00111 int CenterImage;
00112
00113 int OutputExtentStart[3];
00114 int ExtentTranslation[3];
00115 int FinalExtentTranslation[3];
00116
00117 double OutputSpacing[3];
00118 double SpacingScale[3];
00119
00120 double OutputOrigin[3];
00121 double OriginScale[3];
00122 double OriginTranslation[3];
00123
00124 virtual int RequestUpdateExtent (vtkInformation *,
00125 vtkInformationVector **,
00126 vtkInformationVector *);
00127 virtual int RequestInformation (vtkInformation *,
00128 vtkInformationVector **,
00129 vtkInformationVector *);
00130
00131 virtual int RequestData(vtkInformation *,
00132 vtkInformationVector **,
00133 vtkInformationVector *);
00134
00135 virtual int FillInputPortInformation(int port, vtkInformation *info);
00136
00137 private:
00138 vtkImageChangeInformation(const vtkImageChangeInformation&);
00139 void operator=(const vtkImageChangeInformation&);
00140 };
00141
00142
00143
00144 #endif
00145
00146
00147