23 #ifndef vtkHyperTreeGridGradient_h
24 #define vtkHyperTreeGridGradient_h
26 #include "vtkFiltersHyperTreeModule.h"
35 VTK_ABI_NAMESPACE_BEGIN
60 vtkSetMacro(ComputeGradient,
bool);
61 vtkGetMacro(ComputeGradient,
bool);
62 vtkBooleanMacro(ComputeGradient,
bool);
69 vtkSetStringMacro(GradientArrayName);
70 vtkGetStringMacro(GradientArrayName);
72 void SetResultArrayName(
std::
string name) { this->SetGradientArrayName(name.c_str()); }
74 std::
string GetResultArrayName() {
return std::string(this->GetGradientArrayName()); }
84 vtkSetClampMacro(Mode,
int, UNLIMITED, UNSTRUCTURED);
85 vtkGetMacro(Mode,
int);
94 vtkSetMacro(ExtensiveComputation,
bool);
95 vtkGetMacro(ExtensiveComputation,
bool);
96 vtkBooleanMacro(ExtensiveComputation,
bool);
104 vtkSetMacro(ComputeDivergence,
bool);
105 vtkGetMacro(ComputeDivergence,
bool);
106 vtkBooleanMacro(ComputeDivergence,
bool);
113 vtkSetStringMacro(DivergenceArrayName);
114 vtkGetStringMacro(DivergenceArrayName);
122 vtkSetMacro(ComputeVorticity,
bool);
123 vtkGetMacro(ComputeVorticity,
bool);
124 vtkBooleanMacro(ComputeVorticity,
bool);
131 vtkSetStringMacro(VorticityArrayName);
132 vtkGetStringMacro(VorticityArrayName);
140 vtkSetMacro(ComputeQCriterion,
bool);
141 vtkGetMacro(ComputeQCriterion,
bool);
142 vtkBooleanMacro(ComputeQCriterion,
bool);
149 vtkSetStringMacro(QCriterionArrayName);
150 vtkGetStringMacro(QCriterionArrayName);
166 template <
class Cursor,
class GradWorker>
167 void RecursivelyProcessGradientTree(Cursor*, GradWorker&);
173 template <
class FieldsWorker>
180 bool ComputeGradient =
true;
182 char* GradientArrayName = strdup(
"Gradient");
183 int Mode = ComputeMode::UNLIMITED;
184 bool ExtensiveComputation =
false;
187 bool ComputeDivergence =
false;
189 char* DivergenceArrayName = strdup(
"Divergence");
192 bool ComputeVorticity =
false;
194 char* VorticityArrayName = strdup(
"Vorticity");
197 bool ComputeQCriterion =
false;
199 char* QCriterionArrayName = strdup(
"QCriterion");
215 VTK_ABI_NAMESPACE_END
216 #endif // vtkHyperTreeGridGradient_h
vtkNew< vtkDoubleArray > OutVortArray
vtkNew< vtkDoubleArray > OutDivArray
vtkSmartPointer< vtkDataArray > InArray
Keep track of selected input scalars / vectors.
VTKACCELERATORSVTKMDATAMODEL_EXPORT void ProcessFields(vtkDataSet *input, vtkm::cont::DataSet &dataset, tovtkm::FieldsFlag fields)
A dataset containing a grid of vtkHyperTree instances arranged as a rectilinear grid.
Objects for traversal a HyperTreeGrid.
dynamic, self-adjusting array of double
#define VTK_DEPRECATED_IN_9_3_0(reason)
a simple class to control print indentation
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
dynamic, self-adjusting array of unsigned char
vtkNew< vtkDoubleArray > OutGradArray
dynamic, self-adjusting array of bits
Superclass for algorithms that produce a hyper tree grid as output.
static vtkAlgorithm * New()
Compute the gradient of a scalar field on a Hyper Tree Grid.
general representation of visualization data
vtkNew< vtkDoubleArray > OutQCritArray
virtual int ProcessTrees(vtkHyperTreeGrid *, vtkDataObject *)=0
Main routine to process individual trees in the grid This is pure virtual method to be implemented by...