00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00037 #ifndef __vtkGradientFilter_h
00038 #define __vtkGradientFilter_h
00039
00040 #include "vtkDataSetAlgorithm.h"
00041
00042 class VTK_GRAPHICS_EXPORT vtkGradientFilter : public vtkDataSetAlgorithm
00043 {
00044 public:
00045 vtkTypeMacro(vtkGradientFilter, vtkDataSetAlgorithm);
00046 virtual void PrintSelf(ostream &os, vtkIndent indent);
00047
00048 static vtkGradientFilter *New();
00049
00051
00056 virtual void SetInputScalars(int fieldAssociation, const char *name);
00057 virtual void SetInputScalars(int fieldAssociation, int fieldAttributeType);
00059
00061
00063 vtkGetStringMacro(ResultArrayName);
00064 vtkSetStringMacro(ResultArrayName);
00066
00068
00075 vtkGetMacro(FasterApproximation, int);
00076 vtkSetMacro(FasterApproximation, int);
00077 vtkBooleanMacro(FasterApproximation, int);
00079
00081
00083 vtkSetMacro(ComputeVorticity, int);
00084 vtkGetMacro(ComputeVorticity, int);
00085 vtkBooleanMacro(ComputeVorticity, int);
00087
00088 protected:
00089 vtkGradientFilter();
00090 ~vtkGradientFilter();
00091
00092 virtual int RequestUpdateExtent(vtkInformation *,
00093 vtkInformationVector **,
00094 vtkInformationVector *);
00095 virtual int RequestData(vtkInformation *, vtkInformationVector **,
00096 vtkInformationVector *);
00097
00099
00102 virtual int ComputeUnstructuredGridGradient(
00103 vtkDataArray* Array, int fieldAssociation, vtkDataSet* input,
00104 vtkDataSet* output);
00106
00108
00111 virtual int ComputeRegularGridGradient(
00112 vtkDataArray* Array, int fieldAssociation, vtkDataSet* output);
00114
00116 char *ResultArrayName;
00117
00125 int FasterApproximation;
00126
00130 int ComputeVorticity;
00131
00132 private:
00133 vtkGradientFilter(const vtkGradientFilter &);
00134 void operator=(const vtkGradientFilter &);
00135 };
00136
00137 #endif //_vtkGradientFilter_h