47 #ifndef vtkTemporalInterpolatedVelocityField_h
48 #define vtkTemporalInterpolatedVelocityField_h
51 #include "vtkFiltersFlowPathsModule.h"
98 LINEAR_TRANSFORMATION = 2,
111 vtkSetClampMacro(MeshOverTime,
int, DIFFERENT, SAME_TOPOLOGY);
116 vtkGetMacro(MeshOverTime,
int);
136 using Superclass::FunctionValues;
143 int FunctionValuesAtT(
int T,
double* x,
double* u);
151 void SelectVectors(
const char* fieldName) { this->SetVectorsSelection(fieldName); }
159 void AddDataSetAtTime(
int N,
double T,
vtkDataSet* dataset);
161 void SetDataSetAtTime(
int,
int,
double,
vtkDataSet*,
bool) {}
170 bool GetCachedCellIds(
vtkIdType id[2],
int ds[2]);
171 void SetCachedCellIds(
vtkIdType id[2],
int ds[2]);
185 int TestPoint(
double* x);
186 int QuickTestPoint(
double* x);
194 vtkGetVector3Macro(LastGoodVelocity,
double);
201 vtkGetMacro(CurrentWeight,
double);
208 bool GetVorticityData(
211 void ShowCacheResults();
213 bool IsStatic(
int) {
return this->MeshOverTime == STATIC; }
215 void AdvanceOneTimeStep();
232 virtual void SetVectorsSelection(
const char* v);
234 int MeshOverTime = MeshOverTimeTypes::DIFFERENT;
241 void CreateLocators(
const std::vector<vtkDataSet*>& datasets,
vtkFindCellStrategy* strategy,
243 void CreateLinks(
const std::vector<vtkDataSet*>& datasets,
251 double LastGoodVelocity[3];
264 std::vector<vtkSmartPointer<vtkLocator>> Locators[2];
266 std::vector<vtkSmartPointer<vtkAbstractCellLinks>> Links[2];
267 std::vector<size_t> MaxCellSizes[2];
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()