VTK  9.1.0
vtkCellLocatorInterpolatedVelocityField.h
Go to the documentation of this file.
1 /*=========================================================================
2 
3  Program: Visualization Toolkit
4  Module: vtkCellLocatorInterpolatedVelocityField.h
5 
6  Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen
7  All rights reserved.
8  See Copyright.txt or http://www.kitware.com/Copyright.htm for details.
9 
10  This software is distributed WITHOUT ANY WARRANTY; without even
11  the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
12  PURPOSE. See the above copyright notice for more information.
13 
14 =========================================================================*/
51 #ifndef vtkCellLocatorInterpolatedVelocityField_h
52 #define vtkCellLocatorInterpolatedVelocityField_h
53 
55 #include "vtkFiltersFlowPathsModule.h" // For export macro
56 
58 class vtkCellLocatorInterpolatedVelocityFieldCellLocatorsType;
59 
60 class VTKFILTERSFLOWPATHS_EXPORT vtkCellLocatorInterpolatedVelocityField
62 {
63 public:
65  void PrintSelf(ostream& os, vtkIndent indent) override;
66 
72 
74 
77  vtkGetObjectMacro(LastCellLocator, vtkAbstractCellLocator);
79 
81 
89  vtkGetObjectMacro(CellLocatorPrototype, vtkAbstractCellLocator);
91 
96 
104  void AddDataSet(vtkDataSet* dataset) override;
105 
110  int FunctionValues(double* x, double* f) override;
111 
115  void SetLastCellId(vtkIdType c, int dataindex) override;
116 
120  void SetLastCellId(vtkIdType c) override { this->Superclass::SetLastCellId(c); }
121 
122 protected:
125 
132  int FunctionValues(vtkDataSet* dataset, vtkAbstractCellLocator* loc, double* x, double* f);
133 
139  int FunctionValues(vtkDataSet* ds, double* x, double* f) override
140  {
141  return this->Superclass::FunctionValues(ds, x, f);
142  }
143 
144 private:
145  vtkAbstractCellLocator* LastCellLocator;
146  vtkAbstractCellLocator* CellLocatorPrototype;
147  vtkCellLocatorInterpolatedVelocityFieldCellLocatorsType* CellLocators;
148 
150  void operator=(const vtkCellLocatorInterpolatedVelocityField&) = delete;
151 };
152 
153 #endif
an abstract base class for locators which find cells
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).
virtual void SetLastCellId(vtkIdType c)
Get/Set the id of the cell cached from last evaluation.
A concrete class for obtaining the interpolated velocity values at a point.
int FunctionValues(double *x, double *f) override
Evaluate the velocity field f at point (x, y, z).
void SetLastCellId(vtkIdType c, int dataindex) override
Set the cell id cached by the last evaluation within a specified dataset.
void AddDataSet(vtkDataSet *dataset) override
Add a dataset coupled with a cell locator (of type vtkAbstractCellLocator) for vector function evalua...
void SetCellLocatorPrototype(vtkAbstractCellLocator *prototype)
Set/Get the prototype of the cell locator that is used for interpolating the velocity field during in...
static vtkCellLocatorInterpolatedVelocityField * New()
Construct a vtkCellLocatorInterpolatedVelocityField without an initial dataset.
void CopyParameters(vtkAbstractInterpolatedVelocityField *from) override
Import parameters.
int FunctionValues(vtkDataSet *ds, double *x, double *f) override
Evaluate the velocity field f at point (x, y, z) in a specified dataset (of type vtkImageData or vtkR...
int FunctionValues(vtkDataSet *dataset, vtkAbstractCellLocator *loc, double *x, double *f)
Evaluate the velocity field f at point (x, y, z) in a specified dataset (actually of type vtkPointSet...
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
void SetLastCellId(vtkIdType c) override
Set the cell id cached by the last evaluation.
An abstract class for obtaining the interpolated velocity values at a point.
abstract class to specify dataset behavior
Definition: vtkDataSet.h:57
a simple class to control print indentation
Definition: vtkIndent.h:34
int vtkIdType
Definition: vtkType.h:332