30 #ifndef __vtkImageSlab_h
31 #define __vtkImageSlab_h
33 #include "vtkImagingGeneralModule.h"
34 #include "vtkThreadedImageAlgorithm.h"
36 class VTKIMAGINGGENERAL_EXPORT
vtkImageSlab :
public vtkThreadedImageAlgorithm
41 void PrintSelf(ostream& os, vtkIndent indent);
46 vtkSetClampMacro(Orientation,
int, 0, 2);
48 this->SetOrientation(0); };
50 this->SetOrientation(1); };
52 this->SetOrientation(2); };
53 vtkGetMacro(Orientation,
int);
59 vtkSetVector2Macro(SliceRange,
int);
60 vtkGetVector2Macro(SliceRange,
int);
66 vtkSetClampMacro(Operation,
int, VTK_IMAGE_SLAB_MIN, VTK_IMAGE_SLAB_SUM);
68 this->SetOperation(VTK_IMAGE_SLAB_MIN); };
70 this->SetOperation(VTK_IMAGE_SLAB_MAX); };
72 this->SetOperation(VTK_IMAGE_SLAB_MEAN); };
74 this->SetOperation(VTK_IMAGE_SLAB_SUM); };
75 vtkGetMacro(Operation,
int);
76 const char *GetOperationAsString();
84 vtkSetMacro(TrapezoidIntegration,
int);
85 vtkBooleanMacro(TrapezoidIntegration,
int);
86 vtkGetMacro(TrapezoidIntegration,
int);
95 vtkSetMacro(MultiSliceOutput,
int);
96 vtkBooleanMacro(MultiSliceOutput,
int);
97 vtkGetMacro(MultiSliceOutput,
int);
106 this->SetOutputScalarType(VTK_FLOAT); };
108 this->SetOutputScalarType(VTK_DOUBLE); };
110 this->SetOutputScalarType(0); };
111 vtkGetMacro(OutputScalarType,
int);
118 virtual int RequestInformation(vtkInformation *, vtkInformationVector **,
119 vtkInformationVector *);
120 virtual int RequestUpdateExtent(vtkInformation *, vtkInformationVector **,
121 vtkInformationVector *);
122 virtual void ThreadedRequestData(vtkInformation *request,
123 vtkInformationVector **inputVector,
124 vtkInformationVector *outputVector,
125 vtkImageData ***inData,
126 vtkImageData **outData,
int ext[6],
int id);
128 vtkSetMacro(OutputScalarType,
int);
void SetOperationToMean()
void SetOutputScalarTypeToFloat()
combine image slices to form a slab image
void SetOutputScalarTypeToDouble()
void SetOutputScalarTypeToInputScalarType()