47 #ifndef vtkTemporalInterpolatedVelocityField_h
48 #define vtkTemporalInterpolatedVelocityField_h
50 #include "vtkFiltersFlowPathsModule.h"
56 #define ID_INSIDE_ALL 00
57 #define ID_OUTSIDE_ALL 01
58 #define ID_OUTSIDE_T0 02
59 #define ID_OUTSIDE_T1 03
95 {this->SetVectorsSelection(fieldName);}
134 vtkGetVector3Macro(LastGoodVelocity,
double);
141 vtkGetMacro(CurrentWeight,
double);
150 int T,
double pcoords[3],
double *weights,
168 double LastGoodVelocity[3];
Interface for obtaining interpolated velocity values.
abstract superclass for arrays of numeric data
abstract class to specify dataset behavior
dynamic, self-adjusting array of double
Abstract interface for sets of functions.
provides thread-safe access to cells
a simple class to control print indentation
represent and manipulate point attribute data
A helper class for interpolating between times during particle tracing.
~vtkTemporalInterpolatedVelocityField()
int QuickTestPoint(double *x)
int TestPoint(double *x)
A utility function which evaluates the point at T1, T2 to see if it is inside the data at both times ...
bool IsStatic(int datasetIndex)
static vtkTemporalInterpolatedVelocityField * New()
Construct a vtkTemporalInterpolatedVelocityField with no initial data set.
bool InterpolatePoint(vtkPointData *outPD1, vtkPointData *outPD2, vtkIdType outIndex)
int FunctionValues(vtkDataSet *ds, double *x, double *f)
void SelectVectors(const char *fieldName)
If you want to work with an arbitrary vector array, then set its name here.
virtual void SetVectorsSelection(const char *v)
bool GetVorticityData(int T, double pcoords[3], double *weights, vtkGenericCell *&cell, vtkDoubleArray *cellVectors)
virtual int FunctionValues(double *x, double *u)
Evaluate the velocity field, f, at (x, y, z, t).
void AdvanceOneTimeStep()
bool InterpolatePoint(int T, vtkPointData *outPD1, vtkIdType outIndex)
void SetCachedCellIds(vtkIdType id[2], int ds[2])
bool GetCachedCellIds(vtkIdType id[2], int ds[2])
Between iterations of the Particle Tracer, Id's of the Cell are stored and then at the start of the n...
void SetDataSetAtTime(int I, int N, double T, vtkDataSet *dataset, bool staticdataset)
In order to use this class, two sets of data must be supplied, corresponding to times T1 and T2.
std::vector< bool > StaticDataSets
void ClearCache()
Set the last cell id to -1 so that the next search does not start from the previous cell.
vtkTemporalInterpolatedVelocityField()
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
int FunctionValuesAtT(int T, double *x, double *u)