35 #ifndef vtkTemporalInterpolatedVelocityField_h
36 #define vtkTemporalInterpolatedVelocityField_h
39 #include "vtkFiltersFlowPathsModule.h"
45 VTK_ABI_NAMESPACE_BEGIN
88 LINEAR_TRANSFORMATION = 2,
101 vtkSetClampMacro(MeshOverTime,
int, DIFFERENT, SAME_TOPOLOGY);
106 vtkGetMacro(MeshOverTime,
int);
126 using Superclass::FunctionValues;
133 int FunctionValuesAtT(
int T,
double* x,
double* u);
141 void SelectVectors(
const char* fieldName) { this->SetVectorsSelection(fieldName); }
149 void AddDataSetAtTime(
int N,
double T,
vtkDataSet* dataset);
158 bool GetCachedCellIds(
vtkIdType id[2],
int ds[2]);
159 void SetCachedCellIds(
vtkIdType id[2],
int ds[2]);
173 int TestPoint(
double* x);
174 int QuickTestPoint(
double* x);
182 vtkGetVector3Macro(LastGoodVelocity,
double);
189 vtkGetMacro(CurrentWeight,
double);
196 bool GetVorticityData(
199 void ShowCacheResults();
201 void AdvanceOneTimeStep();
213 "GetFindCellStrategy() always returns
nullptr. Use GetCellLocator() instead.")
214 virtual vtkFindCellStrategy* GetFindCellStrategy() {
return nullptr; }
231 virtual void SetVectorsSelection(
const char* v);
233 int MeshOverTime = MeshOverTimeTypes::DIFFERENT;
240 void CreateCellLocators(
const std::vector<vtkDataSet*>& datasets,
243 void CreateLinks(
const std::vector<vtkDataSet*>& datasets,
245 void CreateLinearTransformCellLocators(
252 double LastGoodVelocity[3];
265 std::vector<vtkSmartPointer<vtkAbstractCellLocator>> CellLocators[2];
267 std::vector<vtkSmartPointer<vtkAbstractCellLinks>> Links[2];
268 std::vector<size_t> MaxCellSizes[2];
281 VTK_ABI_NAMESPACE_END
A helper class for interpolating between times during particle tracing.
represent and manipulate point attribute data
std::vector< vtkSmartPointer< vtkAbstractCellLocator > > InitialCellLocators
abstract class to specify dataset behavior
void SetMeshOverTimeToDifferent()
MeshOverTimeTypes
Types of Variance of Mesh over time.
an abstract base class for classes that build topological links from points to cells ...
IDStates
States that define where the cell id are.
an abstract base class for locators which find cells
abstract base class for objects that accelerate spatial searches
vtkAbstractCellLocator * CellLocator
An abstract class for obtaining the interpolated velocity values at a point.
provides thread-safe access to cells
dynamic, self-adjusting array of double
void SetMeshOverTimeToSameTopology()
helper class to manage the vtkPointSet::FindCell() method
void SelectVectors(const char *fieldName)
If you want to work with an arbitrary vector array, then set its name here.
abstract superclass for composite (multi-block or AMR) datasets
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
a simple class to control print indentation
static const double WEIGHT_TO_TOLERANCE
abstract superclass for arrays of numeric data
Abstract interface for sets of functions.
virtual int FunctionValues(double *x, double *f)
Evaluate functions at x_j.
static vtkObject * New()
Create an object with Debug turned off, modified time initialized to zero, and reference counting on...
void SetMeshOverTimeToStatic()
#define VTK_DEPRECATED_IN_9_7_0(reason)
void SetMeshOverTimeToLinearTransformation()