VTK  9.3.20240328
vtkCellDerivatives.h
Go to the documentation of this file.
1 // SPDX-FileCopyrightText: Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen
2 // SPDX-License-Identifier: BSD-3-Clause
39 #ifndef vtkCellDerivatives_h
40 #define vtkCellDerivatives_h
41 
42 #include "vtkDataSetAlgorithm.h"
43 #include "vtkFiltersGeneralModule.h" // For export macro
44 
45 #define VTK_VECTOR_MODE_PASS_VECTORS 0
46 #define VTK_VECTOR_MODE_COMPUTE_GRADIENT 1
47 #define VTK_VECTOR_MODE_COMPUTE_VORTICITY 2
48 
49 #define VTK_TENSOR_MODE_PASS_TENSORS 0
50 #define VTK_TENSOR_MODE_COMPUTE_GRADIENT 1
51 #define VTK_TENSOR_MODE_COMPUTE_STRAIN 2
52 #define VTK_TENSOR_MODE_COMPUTE_GREEN_LAGRANGE_STRAIN 3
53 
54 VTK_ABI_NAMESPACE_BEGIN
55 class VTKFILTERSGENERAL_EXPORT vtkCellDerivatives : public vtkDataSetAlgorithm
56 {
57 public:
59 
63  void PrintSelf(ostream& os, vtkIndent indent) override;
65 
70 
72 
79  vtkSetMacro(VectorMode, int);
80  vtkGetMacro(VectorMode, int);
84  const char* GetVectorModeAsString();
86 
88 
96  vtkSetMacro(TensorMode, int);
97  vtkGetMacro(TensorMode, int);
102  {
104  }
105  const char* GetTensorModeAsString();
107 
108 protected:
110  ~vtkCellDerivatives() override = default;
112 
115 
116 private:
117  vtkCellDerivatives(const vtkCellDerivatives&) = delete;
118  void operator=(const vtkCellDerivatives&) = delete;
119 };
120 
121 VTK_ABI_NAMESPACE_END
122 #endif
compute derivatives of scalars and vectors
int RequestData(vtkInformation *, vtkInformationVector **, vtkInformationVector *) override
This is called within ProcessRequest when a request asks the algorithm to do its work.
void SetTensorModeToComputeGradient()
Control how the filter works to generate tensor cell data.
void PrintSelf(ostream &os, vtkIndent indent) override
Standard methods for type information and printing.
const char * GetVectorModeAsString()
Control how the filter works to generate vector cell data.
void SetVectorModeToPassVectors()
Control how the filter works to generate vector cell data.
void SetTensorModeToPassTensors()
Control how the filter works to generate tensor cell data.
void SetVectorModeToComputeGradient()
Control how the filter works to generate vector cell data.
void SetTensorModeToComputeGreenLagrangeStrain()
Control how the filter works to generate tensor cell data.
static vtkCellDerivatives * New()
Construct to compute the gradient of the scalars and vectors.
void SetTensorModeToComputeStrain()
Control how the filter works to generate tensor cell data.
const char * GetTensorModeAsString()
Control how the filter works to generate tensor cell data.
~vtkCellDerivatives() override=default
void SetVectorModeToComputeVorticity()
Control how the filter works to generate vector cell data.
Superclass for algorithms that produce output of the same type as input.
a simple class to control print indentation
Definition: vtkIndent.h:108
Store zero or more vtkInformation instances.
Store vtkAlgorithm input/output information.
#define VTK_TENSOR_MODE_COMPUTE_GRADIENT
#define VTK_VECTOR_MODE_COMPUTE_VORTICITY
#define VTK_TENSOR_MODE_PASS_TENSORS
#define VTK_VECTOR_MODE_COMPUTE_GRADIENT
#define VTK_TENSOR_MODE_COMPUTE_GREEN_LAGRANGE_STRAIN
#define VTK_VECTOR_MODE_PASS_VECTORS
#define VTK_TENSOR_MODE_COMPUTE_STRAIN