00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00042
#ifndef __vtkImageAccumulate_h
00043
#define __vtkImageAccumulate_h
00044
00045
00046
#include "vtkImageToImageFilter.h"
00047
00048
class vtkImageStencilData;
00049
00050 class VTK_IMAGING_EXPORT vtkImageAccumulate :
public vtkImageToImageFilter
00051 {
00052
public:
00053
static vtkImageAccumulate *
New();
00054 vtkTypeRevisionMacro(vtkImageAccumulate,
vtkImageToImageFilter);
00055
void PrintSelf(ostream& os,
vtkIndent indent);
00056
00058
00063 vtkSetVector3Macro(ComponentSpacing,
float);
00064 vtkGetVector3Macro(ComponentSpacing,
float);
00066
00068
00074 vtkSetVector3Macro(ComponentOrigin,
float);
00075 vtkGetVector3Macro(ComponentOrigin,
float);
00077
00079
00084
void SetComponentExtent(
int extent[6]);
00085
void SetComponentExtent(
int minX,
int maxX,
int minY,
int maxY,
00086
int minZ,
int maxZ);
00087
void GetComponentExtent(
int extent[6]);
00088 int *GetComponentExtent() {
return this->ComponentExtent;}
00090
00091
00093
00094
void SetStencil(
vtkImageStencilData *stencil);
00095
vtkImageStencilData *GetStencil();
00097
00099
00100 vtkSetMacro(ReverseStencil,
int);
00101 vtkBooleanMacro(ReverseStencil,
int);
00102 vtkGetMacro(ReverseStencil,
int);
00104
00106
00107 vtkGetVector3Macro(Min,
double);
00108 vtkGetVector3Macro(Max,
double);
00109 vtkGetVector3Macro(Mean,
double);
00110 vtkGetVector3Macro(StandardDeviation,
double);
00111 vtkGetMacro(VoxelCount,
long int);
00113
00114
00115
protected:
00116 vtkImageAccumulate();
00117 ~vtkImageAccumulate();
00118
00119 float ComponentSpacing[3];
00120 float ComponentOrigin[3];
00121 int ComponentExtent[6];
00122
00123
void ExecuteInformation(
vtkImageData *input,
vtkImageData *output);
00124
void ComputeInputUpdateExtent(
int inExt[6],
int outExt[6]);
00125 void ExecuteInformation(){this->
vtkImageToImageFilter::ExecuteInformation();};
00126
void ExecuteData(
vtkDataObject *out);
00127
00128 double Min[3];
00129 double Max[3];
00130 double Mean[3];
00131 double StandardDeviation[3];
00132 long int VoxelCount;
00133
00134 int ReverseStencil;
00135
00136
private:
00137 vtkImageAccumulate(
const vtkImageAccumulate&);
00138
void operator=(
const vtkImageAccumulate&);
00139 };
00140
00141
#endif
00142
00143
00144