00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00037
#ifndef __vtkImageGradientMagnitude_h
00038
#define __vtkImageGradientMagnitude_h
00039
00040
00041
#include "vtkImageToImageFilter.h"
00042
00043 class VTK_IMAGING_EXPORT vtkImageGradientMagnitude :
public vtkImageToImageFilter
00044 {
00045
public:
00046
static vtkImageGradientMagnitude *
New();
00047 vtkTypeRevisionMacro(vtkImageGradientMagnitude,
vtkImageToImageFilter);
00048
void PrintSelf(ostream& os,
vtkIndent indent);
00049
00051
00053 vtkSetMacro(HandleBoundaries,
int);
00054 vtkGetMacro(HandleBoundaries,
int);
00055 vtkBooleanMacro(HandleBoundaries,
int);
00057
00059
00060 vtkSetClampMacro(Dimensionality,
int,2,3);
00061 vtkGetMacro(Dimensionality,
int);
00063
00064
protected:
00065 vtkImageGradientMagnitude();
00066 ~vtkImageGradientMagnitude() {};
00067
00068 int HandleBoundaries;
00069 int Dimensionality;
00070
00071
void ExecuteInformation(
vtkImageData *inData,
vtkImageData *outData);
00072
void ComputeInputUpdateExtent(
int inExt[6],
int outExt[6]);
00073 void ExecuteInformation(){this->
vtkImageToImageFilter::ExecuteInformation();};
00074
void ThreadedExecute(
vtkImageData *inData,
vtkImageData *outData,
00075
int extent[6],
int id);
00076
private:
00077 vtkImageGradientMagnitude(
const vtkImageGradientMagnitude&);
00078
void operator=(
const vtkImageGradientMagnitude&);
00079 };
00080
00081
#endif
00082
00083
00084