00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00030
#ifndef __vtkImageChangeInformation_h
00031
#define __vtkImageChangeInformation_h
00032
00033
#include "vtkImageToImageFilter.h"
00034
00035
class vtkImageData;
00036
00037 class VTK_IMAGING_EXPORT vtkImageChangeInformation :
public vtkImageToImageFilter
00038 {
00039
public:
00040
static vtkImageChangeInformation *
New();
00041 vtkTypeRevisionMacro(vtkImageChangeInformation,
vtkImageToImageFilter);
00042
void PrintSelf(ostream& os,
vtkIndent indent);
00043
00045
00047
virtual void SetInformationInput(
vtkImageData*);
00048 vtkGetObjectMacro(InformationInput,
vtkImageData);
00050
00052
00056 vtkSetVector3Macro(OutputExtentStart,
int);
00057 vtkGetVector3Macro(OutputExtentStart,
int);
00059
00061
00064 vtkSetVector3Macro(OutputSpacing,
float);
00065 vtkGetVector3Macro(OutputSpacing,
float);
00067
00069
00072 vtkSetVector3Macro(OutputOrigin,
float);
00073 vtkGetVector3Macro(OutputOrigin,
float);
00075
00077
00081 vtkSetMacro(CenterImage,
int);
00082 vtkBooleanMacro(CenterImage,
int);
00083 vtkGetMacro(CenterImage,
int);
00085
00087
00088 vtkSetVector3Macro(ExtentTranslation,
int);
00089 vtkGetVector3Macro(ExtentTranslation,
int);
00091
00093
00094 vtkSetVector3Macro(SpacingScale,
float);
00095 vtkGetVector3Macro(SpacingScale,
float);
00097
00099
00100 vtkSetVector3Macro(OriginTranslation,
float);
00101 vtkGetVector3Macro(OriginTranslation,
float);
00103
00105
00107 vtkSetVector3Macro(OriginScale,
float);
00108 vtkGetVector3Macro(OriginScale,
float);
00110
00111
protected:
00112 vtkImageChangeInformation();
00113 ~vtkImageChangeInformation();
00114
00115 vtkImageData *InformationInput;
00116 int CenterImage;
00117
00118 int OutputExtentStart[3];
00119 int ExtentTranslation[3];
00120 int FinalExtentTranslation[3];
00121
00122 float OutputSpacing[3];
00123 float SpacingScale[3];
00124
00125 float OutputOrigin[3];
00126 float OriginScale[3];
00127 float OriginTranslation[3];
00128
00129
void ComputeInputUpdateExtent(
int extent[6],
int wholeExtent[6]);
00130
void ExecuteInformation(
vtkImageData *inData,
vtkImageData *outData);
00131 void ExecuteInformation() {
00132 this->
vtkImageToImageFilter::ExecuteInformation(); };
00133
void ExecuteData(
vtkDataObject *data);
00134
private:
00135 vtkImageChangeInformation(
const vtkImageChangeInformation&);
00136
void operator=(
const vtkImageChangeInformation&);
00137 };
00138
00139
00140
00141
#endif
00142
00143
00144