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