77 #ifndef vtkAbstractInterpolatedVelocityField_h
78 #define vtkAbstractInterpolatedVelocityField_h
80 #include "vtkFiltersFlowPathsModule.h"
117 INITIALIZE_ALL_DATASETS = 1,
136 virtual void Initialize(
vtkCompositeDataSet* compDS,
int initStrategy = INITIALIZE_ALL_DATASETS);
137 vtkGetMacro(InitializationState,
int);
147 vtkSetMacro(Caching,
bool);
148 vtkGetMacro(Caching,
bool);
156 vtkGetMacro(CacheHit,
int);
157 vtkGetMacro(CacheMiss,
int);
173 virtual void SetLastCellId(
vtkIdType c,
int dataindex) = 0;
180 vtkGetStringMacro(VectorsSelection);
181 vtkGetMacro(VectorsType,
int);
188 void SelectVectors(
int fieldAssociation,
const char* fieldName);
208 vtkSetMacro(NormalizeVector,
bool);
209 vtkGetMacro(NormalizeVector,
bool);
218 vtkSetMacro(ForceSurfaceTangentVector,
bool);
219 vtkGetMacro(ForceSurfaceTangentVector,
bool);
226 vtkSetMacro(SurfaceDataset,
bool);
227 vtkGetMacro(SurfaceDataset,
bool);
238 using Superclass::FunctionValues;
254 int GetLastWeights(
double* w);
255 int GetLastLocalCoordinates(
double pcoords[3]);
285 double LastPCoords[3];
287 double LastClosestPoint[3];
324 std::vector<vtkDataSetInformation>::iterator GetDataSetInfo(
vtkDataSet* dataset);
331 vtkSetStringMacro(VectorsSelection);
370 return (this->LastCellId != -1) ? this->CurrentCell.
Get() :
nullptr;
383 size_t GetDataSetsInfoSize();
A helper class for interpolating between times during particle tracing.
represent and manipulate point attribute data
static const double TOLERANCE_SCALE
abstract class to specify dataset behavior
T * Get() const noexcept
Get a raw pointer to the contained object.
std::vector< vtkDataSetInformation > DataSetsInfo
Define a FindCell() strategy, keep track of the strategies (and other cached information) associated ...
implement a specific vtkPointSet::FindCell() strategy based on closest point
An abstract class for obtaining the interpolated velocity values at a point.
provides thread-safe access to cells
virtual int SelfInitialize()
These methods pertain to initializing the vector field by subclasses (which may have special initiali...
helper class to manage the vtkPointSet::FindCell() METHOD
vtkNew< vtkGenericCell > CurrentCell
abstract superclass for composite (multi-block or AMR) datasets
void ClearLastCellId()
Set the last cell id to -1 to incur a global cell search for the next point.
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
VelocityFieldInitializationState
list of point or cell ids
abstract superclass for arrays of numeric data
vtkFindCellStrategy * FindCellStrategy
Define a FindCell() strategy, keep track of the strategies (and other cached information) associated ...
static const double SURFACE_TOLERANCE_SCALE
vtkGenericCell * GetLastCell()
If all weights have been computed (parametric coords etc all valid), a scalar/vector can be quickly i...
Abstract interface for sets of functions.
implement a specific vtkPointSet::FindCell() strategy based on the N closest points ...
virtual int FunctionValues(double *x, double *f)
Evaluate functions at x_j.
std::vector< double > Weights
bool ForceSurfaceTangentVector
virtual void SetLastCellId(vtkIdType c)
Get/Set the id of the cell cached from last evaluation.
vtkNew< vtkIdList > PointIds
int InitializationState
Make sure the velocity field is initialized: record the initialization strategy.
bool InterpolatePoint(vtkPointData *outPD1, vtkPointData *outPD2, vtkIdType outIndex)
vtkNew< vtkGenericCell > LastCell
general representation of visualization data
implement a specific vtkPointSet::FindCell() strategy based on using a cell locator ...