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 "vtkImageToImageFilter.h"
00030
00031
class vtkImageData;
00032
00033 class VTK_IMAGING_EXPORT vtkImageChangeInformation :
public vtkImageToImageFilter
00034 {
00035
public:
00036
static vtkImageChangeInformation *
New();
00037 vtkTypeRevisionMacro(vtkImageChangeInformation,
vtkImageToImageFilter);
00038
void PrintSelf(ostream& os,
vtkIndent indent);
00039
00041
00043
virtual void SetInformationInput(
vtkImageData*);
00044 vtkGetObjectMacro(InformationInput,
vtkImageData);
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 vtkImageData *InformationInput;
00112 int CenterImage;
00113
00114 int OutputExtentStart[3];
00115 int ExtentTranslation[3];
00116 int FinalExtentTranslation[3];
00117
00118 double OutputSpacing[3];
00119 double SpacingScale[3];
00120
00121 double OutputOrigin[3];
00122 double OriginScale[3];
00123 double OriginTranslation[3];
00124
00125
void ComputeInputUpdateExtent(
int extent[6],
int wholeExtent[6]);
00126
void ExecuteInformation(
vtkImageData *inData,
vtkImageData *outData);
00127 void ExecuteInformation() {
00128 this->
vtkImageToImageFilter::ExecuteInformation(); };
00129
void ExecuteData(
vtkDataObject *data);
00130
private:
00131 vtkImageChangeInformation(
const vtkImageChangeInformation&);
00132
void operator=(
const vtkImageChangeInformation&);
00133 };
00134
00135
00136
00137
#endif
00138
00139
00140