35 #ifndef vtkTemporalInterpolatedVelocityField_h
36 #define vtkTemporalInterpolatedVelocityField_h
39 #include "vtkFiltersFlowPathsModule.h"
45 VTK_ABI_NAMESPACE_BEGIN
87 LINEAR_TRANSFORMATION = 2,
100 vtkSetClampMacro(MeshOverTime,
int, DIFFERENT, SAME_TOPOLOGY);
105 vtkGetMacro(MeshOverTime,
int);
125 using Superclass::FunctionValues;
132 int FunctionValuesAtT(
int T,
double* x,
double* u);
140 void SelectVectors(
const char* fieldName) { this->SetVectorsSelection(fieldName); }
148 void AddDataSetAtTime(
int N,
double T,
vtkDataSet* dataset);
150 void SetDataSetAtTime(
int,
int,
double,
vtkDataSet*,
bool) {}
159 bool GetCachedCellIds(
vtkIdType id[2],
int ds[2]);
160 void SetCachedCellIds(
vtkIdType id[2],
int ds[2]);
174 int TestPoint(
double* x);
175 int QuickTestPoint(
double* x);
183 vtkGetVector3Macro(LastGoodVelocity,
double);
190 vtkGetMacro(CurrentWeight,
double);
197 bool GetVorticityData(
200 void ShowCacheResults();
202 bool IsStatic(
int) {
return this->MeshOverTime == STATIC; }
204 void AdvanceOneTimeStep();
221 virtual void SetVectorsSelection(
const char* v);
223 int MeshOverTime = MeshOverTimeTypes::DIFFERENT;
230 void CreateLocators(
const std::vector<vtkDataSet*>& datasets,
vtkFindCellStrategy* strategy,
232 void CreateLinks(
const std::vector<vtkDataSet*>& datasets,
240 double LastGoodVelocity[3];
253 std::vector<vtkSmartPointer<vtkLocator>> Locators[2];
255 std::vector<vtkSmartPointer<vtkAbstractCellLinks>> Links[2];
256 std::vector<size_t> MaxCellSizes[2];
269 VTK_ABI_NAMESPACE_END
A helper class for interpolating between times during particle tracing.
represent and manipulate point attribute data
abstract class to specify dataset behavior
void SetMeshOverTimeToDifferent()
MeshOverTimeTypes
Types of Variance of Mesh over time.
#define VTK_DEPRECATED_IN_9_2_0(reason)
an abstract base class for classes that build topological links from points to cells ...
IDStates
States that define where the cell id are.
abstract base class for objects that accelerate spatial searches
std::vector< vtkSmartPointer< vtkLocator > > InitialCellLocators
An abstract class for obtaining the interpolated velocity values at a point.
Hold a reference to a vtkObjectBase instance.
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.
vtkFindCellStrategy * FindCellStrategy
static vtkObject * New()
Create an object with Debug turned off, modified time initialized to zero, and reference counting on...
void SetMeshOverTimeToStatic()
void SetMeshOverTimeToLinearTransformation()