VTK
vtkGradientFilter.h
Go to the documentation of this file.
1 /*=========================================================================
2 
3  Program: Visualization Toolkit
4  Module: vtkGradientFilter.h
5 
6  Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen
7  All rights reserved.
8  See Copyright.txt or http://www.kitware.com/Copyright.htm for details.
9 
10  This software is distributed WITHOUT ANY WARRANTY; without even
11  the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
12  PURPOSE. See the above copyright notice for more information.
13 
14 =========================================================================*/
15 /*----------------------------------------------------------------------------
16  Copyright (c) Sandia Corporation
17  See Copyright.txt or http://www.paraview.org/HTML/Copyright.html for details.
18 ----------------------------------------------------------------------------*/
19 
38 #ifndef vtkGradientFilter_h
39 #define vtkGradientFilter_h
40 
41 #include "vtkFiltersGeneralModule.h" // For export macro
42 #include "vtkDataSetAlgorithm.h"
43 
45 {
46 public:
48  virtual void PrintSelf(ostream &os, vtkIndent indent);
49 
50  static vtkGradientFilter *New();
51 
53 
58  virtual void SetInputScalars(int fieldAssociation, const char *name);
59  virtual void SetInputScalars(int fieldAssociation, int fieldAttributeType);
61 
63 
66  vtkGetStringMacro(ResultArrayName);
67  vtkSetStringMacro(ResultArrayName);
69 
71 
74  vtkGetStringMacro(DivergenceArrayName);
75  vtkSetStringMacro(DivergenceArrayName);
77 
79 
82  vtkGetStringMacro(VorticityArrayName);
83  vtkSetStringMacro(VorticityArrayName);
85 
87 
90  vtkGetStringMacro(QCriterionArrayName);
91  vtkSetStringMacro(QCriterionArrayName);
93 
95 
102  vtkGetMacro(FasterApproximation, int);
103  vtkSetMacro(FasterApproximation, int);
104  vtkBooleanMacro(FasterApproximation, int);
106 
108 
111  vtkSetMacro(ComputeGradient, int);
112  vtkGetMacro(ComputeGradient, int);
113  vtkBooleanMacro(ComputeGradient, int);
115 
117 
121  vtkSetMacro(ComputeDivergence, int);
122  vtkGetMacro(ComputeDivergence, int);
123  vtkBooleanMacro(ComputeDivergence, int);
125 
127 
131  vtkSetMacro(ComputeVorticity, int);
132  vtkGetMacro(ComputeVorticity, int);
133  vtkBooleanMacro(ComputeVorticity, int);
135 
137 
142  vtkSetMacro(ComputeQCriterion, int);
143  vtkGetMacro(ComputeQCriterion, int);
144  vtkBooleanMacro(ComputeQCriterion, int);
146 
147 protected:
150 
151  virtual int RequestUpdateExtent(vtkInformation *,
156 
158 
161  virtual int ComputeUnstructuredGridGradient(
162  vtkDataArray* Array, int fieldAssociation, vtkDataSet* input,
163  bool computeVorticity, bool computeQCriterion, bool computeDivergence,
164  vtkDataSet* output);
166 
168 
171  virtual int ComputeRegularGridGradient(
172  vtkDataArray* Array, int fieldAssociation, bool computeVorticity,
173  bool computeQCriterion, bool computeDivergence, vtkDataSet* output);
175 
179 
183 
187 
191 
200 
204 
209 
214 
219 
220 private:
221  vtkGradientFilter(const vtkGradientFilter &); // Not implemented
222  void operator=(const vtkGradientFilter &); // Not implemented
223 };
224 
225 #endif //_vtkGradientFilter_h
Store vtkAlgorithm input/output information.
abstract class to specify dataset behavior
Definition: vtkDataSet.h:61
a simple class to control print indentation
Definition: vtkIndent.h:38
abstract superclass for arrays of numeric data
Definition: vtkDataArray.h:54
virtual int RequestData(vtkInformation *, vtkInformationVector **, vtkInformationVector *)
#define VTKFILTERSGENERAL_EXPORT
A general filter for gradient estimation.
virtual int RequestUpdateExtent(vtkInformation *, vtkInformationVector **, vtkInformationVector *)
Store zero or more vtkInformation instances.
void PrintSelf(ostream &os, vtkIndent indent)
Superclass for algorithms that produce output of the same type as input.
static vtkDataSetAlgorithm * New()