00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00038
#ifndef __vtkImageAccumulate_h
00039
#define __vtkImageAccumulate_h
00040
00041
00042
#include "vtkImageToImageFilter.h"
00043
00044
class vtkImageStencilData;
00045
00046 class VTK_IMAGING_EXPORT vtkImageAccumulate :
public vtkImageToImageFilter
00047 {
00048
public:
00049
static vtkImageAccumulate *
New();
00050 vtkTypeRevisionMacro(vtkImageAccumulate,
vtkImageToImageFilter);
00051
void PrintSelf(ostream& os,
vtkIndent indent);
00052
00054
00059 vtkSetVector3Macro(ComponentSpacing,
double);
00060 vtkGetVector3Macro(ComponentSpacing,
double);
00062
00064
00070 vtkSetVector3Macro(ComponentOrigin,
double);
00071 vtkGetVector3Macro(ComponentOrigin,
double);
00073
00075
00080
void SetComponentExtent(
int extent[6]);
00081
void SetComponentExtent(
int minX,
int maxX,
int minY,
int maxY,
00082
int minZ,
int maxZ);
00083
void GetComponentExtent(
int extent[6]);
00084 int *GetComponentExtent() {
return this->ComponentExtent;}
00086
00087
00089
00090
void SetStencil(
vtkImageStencilData *stencil);
00091
vtkImageStencilData *GetStencil();
00093
00095
00096 vtkSetMacro(ReverseStencil,
int);
00097 vtkBooleanMacro(ReverseStencil,
int);
00098 vtkGetMacro(ReverseStencil,
int);
00100
00102
00103 vtkGetVector3Macro(Min,
double);
00104 vtkGetVector3Macro(Max,
double);
00105 vtkGetVector3Macro(Mean,
double);
00106 vtkGetVector3Macro(StandardDeviation,
double);
00107 vtkGetMacro(VoxelCount,
long int);
00109
00110
00111
protected:
00112 vtkImageAccumulate();
00113 ~vtkImageAccumulate();
00114
00115 double ComponentSpacing[3];
00116 double ComponentOrigin[3];
00117 int ComponentExtent[6];
00118
00119
void ExecuteInformation(
vtkImageData *input,
vtkImageData *output);
00120
void ComputeInputUpdateExtent(
int inExt[6],
int outExt[6]);
00121 void ExecuteInformation(){this->
vtkImageToImageFilter::ExecuteInformation();};
00122
void ExecuteData(
vtkDataObject *out);
00123
00124 double Min[3];
00125 double Max[3];
00126 double Mean[3];
00127 double StandardDeviation[3];
00128 long int VoxelCount;
00129
00130 int ReverseStencil;
00131
00132
private:
00133 vtkImageAccumulate(
const vtkImageAccumulate&);
00134
void operator=(
const vtkImageAccumulate&);
00135 };
00136
00137
#endif
00138
00139
00140