00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028
00029
00030
00031
00032
00033
00034
00035
00036
00037
00038
00056 #ifndef __vtkImageAccumulate_h
00057 #define __vtkImageAccumulate_h
00058
00059
00060 #include "vtkImageToImageFilter.h"
00061
00062 class VTK_EXPORT vtkImageAccumulate : public vtkImageToImageFilter
00063 {
00064 public:
00065 static vtkImageAccumulate *New();
00066 vtkTypeMacro(vtkImageAccumulate,vtkImageToImageFilter);
00067 void PrintSelf(ostream& os, vtkIndent indent);
00068
00070 vtkSetVector3Macro(ComponentSpacing, float);
00071 vtkGetVector3Macro(ComponentSpacing, float);
00072
00074 vtkSetVector3Macro(ComponentOrigin, float);
00075 vtkGetVector3Macro(ComponentOrigin, float);
00076
00078 void SetComponentExtent(int extent[6]);
00079 void SetComponentExtent(int minX, int maxX, int minY, int maxY,
00080 int minZ, int maxZ);
00081 void GetComponentExtent(int extent[6]);
00082 int *GetComponentExtent() {return this->ComponentExtent;}
00083
00084 protected:
00085 vtkImageAccumulate();
00086 ~vtkImageAccumulate() {};
00087 vtkImageAccumulate(const vtkImageAccumulate&) {};
00088 void operator=(const vtkImageAccumulate&) {};
00089
00090 float ComponentSpacing[3];
00091 float ComponentOrigin[3];
00092 int ComponentExtent[6];
00093
00094 void ExecuteInformation(vtkImageData *input, vtkImageData *output);
00095 void ComputeInputUpdateExtent(int inExt[6], int outExt[6]);
00096 void ExecuteInformation(){this->vtkImageToImageFilter::ExecuteInformation();};
00097 void Execute(vtkImageData *inData, vtkImageData *outData);
00098 void Execute() { this->vtkImageToImageFilter::Execute(); };
00099 void Execute(vtkImageData *outData) { this->vtkImageToImageFilter::Execute(outData); };
00100
00103 void EnlargeOutputUpdateExtents( vtkDataObject *data );
00104
00105 };
00106
00107 #endif
00108
00109
00110