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