67#ifndef vtkAbstractInterpolatedVelocityField_h
68#define vtkAbstractInterpolatedVelocityField_h
76class vtkAbstractInterpolatedVelocityFieldDataSetsType;
80#include "vtkFiltersFlowPathsModule.h"
96 vtkSetMacro(Caching,
bool);
97 vtkGetMacro(Caching,
bool);
105 vtkGetMacro(CacheHit,
int);
106 vtkGetMacro(CacheMiss,
int);
129 vtkGetStringMacro(VectorsSelection);
130 vtkGetMacro(VectorsType,
int);
157 vtkSetMacro(NormalizeVector,
bool);
158 vtkGetMacro(NormalizeVector,
bool);
167 vtkSetMacro(ForceSurfaceTangentVector,
bool);
168 vtkGetMacro(ForceSurfaceTangentVector,
bool);
175 vtkSetMacro(SurfaceDataset,
bool);
176 vtkGetMacro(SurfaceDataset,
bool);
184 using Superclass::FunctionValues;
232 double LastPCoords[3];
248 vtkSetStringMacro(VectorsSelection);
An abstract class for obtaining the interpolated velocity values at a point.
int FunctionValues(double *x, double *f) override=0
Evaluate the velocity field f at point (x, y, z).
bool ForceSurfaceTangentVector
static const double SURFACE_TOLERANCE_SCALE
vtkStrategyMap * StrategyMap
virtual int FunctionValues(vtkDataSet *ds, double *x, double *f)
Evaluate the velocity field f at point (x, y, z) in a specified dataset by invoking vtkDataSet::FindC...
int GetLastWeights(double *w)
Get the interpolation weights cached from last evaluation.
int GetLastLocalCoordinates(double pcoords[3])
Get the interpolation weights cached from last evaluation.
virtual bool FindAndUpdateCell(vtkDataSet *ds, double *x)
Try to find the cell closest to provided x point in provided dataset, By first testing inclusion in i...
vtkAbstractInterpolatedVelocityField()
void ClearLastCellId()
Set the last cell id to -1 to incur a global cell search for the next point.
virtual void SetFindCellStrategy(vtkFindCellStrategy *)
Set / get the strategy used to perform the FindCell() operation.
void FastCompute(vtkDataArray *vectors, double f[3])
If all weights have been computed (parametric coords etc all valid), a scalar/vector can be quickly i...
~vtkAbstractInterpolatedVelocityField() override
vtkFindCellStrategy * FindCellStrategy
bool InterpolatePoint(vtkPointData *outPD, vtkIdType outIndex)
If all weights have been computed (parametric coords etc all valid), a scalar/vector can be quickly i...
static const double TOLERANCE_SCALE
vtkGenericCell * GetLastCell()
If all weights have been computed (parametric coords etc all valid), a scalar/vector can be quickly i...
virtual void CopyParameters(vtkAbstractInterpolatedVelocityField *from)
Import parameters.
virtual void SetLastCellId(vtkIdType c)
Get/Set the id of the cell cached from last evaluation.
virtual bool CheckPCoords(double pcoords[3])
Check that all three pcoords are between 0 and 1 included.
virtual void SetLastCellId(vtkIdType c, int dataindex)=0
Set the id of the most recently visited cell of a dataset.
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
void SelectVectors(int fieldAssociation, const char *fieldName)
the association type (see vtkDataObject::FieldAssociations) and the name of the velocity data field
abstract superclass for arrays of numeric data
abstract class to specify dataset behavior
helper class to manage the vtkPointSet::FindCell() METHOD
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.