67#ifndef vtkArrayCalculator_h
68#define vtkArrayCalculator_h
70#include "vtkFiltersCoreModule.h"
75#define VTK_ATTRIBUTE_MODE_DEFAULT 0
76#define VTK_ATTRIBUTE_MODE_USE_POINT_DATA 1
77#define VTK_ATTRIBUTE_MODE_USE_CELL_DATA 2
78#define VTK_ATTRIBUTE_MODE_USE_VERTEX_DATA 3
79#define VTK_ATTRIBUTE_MODE_USE_EDGE_DATA 4
106 int component1 = 1,
int component2 = 2);
117 int component0 = 0,
int component1 = 1,
129 int component0 = 0,
int component1 = 1,
149 vtkGetMacro(ResultArrayType,
int);
160 vtkGetMacro(CoordinateResults,
int);
171 vtkGetMacro(ResultNormals,
bool);
182 vtkGetMacro(ResultTCoords,
bool);
197 vtkGetMacro(AttributeMode,
int);
252 vtkGetMacro(NumberOfScalarArrays,
int);
253 vtkGetMacro(NumberOfVectorArrays,
int);
264 vtkGetMacro(ReplaceInvalidValues,
int);
267 vtkGetMacro(ReplacementValue,
double);
277 char * ResultArrayName;
278 char ** ScalarArrayNames;
279 char ** VectorArrayNames;
280 char ** ScalarVariableNames;
281 char ** VectorVariableNames;
282 int NumberOfScalarArrays;
283 int NumberOfVectorArrays;
285 int * SelectedScalarComponents;
286 int ** SelectedVectorComponents;
289 int ReplaceInvalidValues;
290 double ReplacementValue;
292 int CoordinateResults;
295 char ** CoordinateScalarVariableNames;
296 char ** CoordinateVectorVariableNames;
297 int * SelectedCoordinateScalarComponents;
298 int ** SelectedCoordinateVectorComponents;
299 int NumberOfCoordinateScalarArrays;
300 int NumberOfCoordinateVectorArrays;
perform mathematical operations on data in field data arrays
char * GetVectorArrayName(int i)
void SetResultArrayName(const char *name)
Set the name of the array in which to store the result of evaluating this function.
void SetAttributeModeToUseEdgeData()
void RemoveAllVariables()
Remove all the variable names and their associated array names.
virtual void RemoveCoordinateVectorVariables()
Remove all the coordinate variables.
char * GetScalarArrayName(int i)
char ** GetScalarArrayNames()
Methods to get information about the current variables.
void SetAttributeModeToUseCellData()
char ** GetVectorVariableNames()
int ** GetSelectedVectorComponents()
void AddScalarVariable(const char *variableName, const char *arrayName, int component=0)
Add a variable name, a corresponding array name, and which components of the array to use.
virtual void SetFunction(const char *function)
Set/Get the function to be evaluated.
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
int * GetSelectedScalarComponents()
void AddVectorArrayName(const char *arrayName, int component0=0, int component1=1, int component2=2)
void AddCoordinateScalarVariable(const char *variableName, int component=0)
Add a variable name, a corresponding array name, and which components of the array to use.
virtual void RemoveVectorVariables()
Remove all the scalar variable names and their associated array names.
char * GetScalarVariableName(int i)
void SetAttributeModeToUseVertexData()
void AddVectorVariable(const char *variableName, const char *arrayName, int component0=0, int component1=1, int component2=2)
char ** GetVectorArrayNames()
int * GetSelectedVectorComponents(int i)
void AddCoordinateVectorVariable(const char *variableName, int component0=0, int component1=1, int component2=2)
void SetAttributeModeToUsePointData()
int GetSelectedScalarComponent(int i)
virtual void RemoveScalarVariables()
Remove all the scalar variable names and their associated array names.
void AddScalarArrayName(const char *arrayName, int component=0)
Add an array name to the list of arrays used in the function and specify which components of the arra...
~vtkArrayCalculator() override
char * GetVectorVariableName(int i)
virtual void RemoveCoordinateScalarVariables()
Remove all the coordinate variables.
void SetAttributeModeToDefault()
const char * GetAttributeModeAsString()
char ** GetScalarVariableNames()
static vtkArrayCalculator * New()
Superclass for algorithms that produce output of the same type as input.
Parse and evaluate a mathematical expression.
a simple class to control print indentation
#define VTK_ATTRIBUTE_MODE_USE_VERTEX_DATA
#define VTK_ATTRIBUTE_MODE_USE_POINT_DATA
#define VTK_ATTRIBUTE_MODE_USE_EDGE_DATA
#define VTK_ATTRIBUTE_MODE_DEFAULT
#define VTK_ATTRIBUTE_MODE_USE_CELL_DATA
vtkSetMacro(IgnoreDriverBugs, bool)
Updates the extensions string.
vtkBooleanMacro(IgnoreDriverBugs, bool)
Updates the extensions string.
vtkGetStringMacro(ExtensionsString)
Returns a string listing all available extensions.