VTK  9.1.0
vtkInterpolatedVelocityField.h
Go to the documentation of this file.
1 /*=========================================================================
2 
3  Program: Visualization Toolkit
4  Module: vtkInterpolatedVelocityField.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 =========================================================================*/
58 #ifndef vtkInterpolatedVelocityField_h
59 #define vtkInterpolatedVelocityField_h
60 
62 #include "vtkFiltersFlowPathsModule.h" // For export macro
63 
64 class VTKFILTERSFLOWPATHS_EXPORT vtkInterpolatedVelocityField
66 {
67 public:
73 
75 
79  void PrintSelf(ostream& os, vtkIndent indent) override;
81 
88  void AddDataSet(vtkDataSet* dataset) override;
89 
94  int FunctionValues(double* x, double* f) override;
95 
99  virtual int SnapPointOnCell(double* pOrigin, double* pProj);
100 
104  void SetLastCellId(vtkIdType c, int dataindex) override;
105 
109  void SetLastCellId(vtkIdType c) override { this->Superclass::SetLastCellId(c); }
110 
111 protected:
113  ~vtkInterpolatedVelocityField() override = default;
114 
122  int FunctionValues(vtkDataSet* ds, double* x, double* f) override
123  {
124  return this->Superclass::FunctionValues(ds, x, f);
125  }
126 
127 private:
129  void operator=(const vtkInterpolatedVelocityField&) = delete;
130 };
131 
132 #endif
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.
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
A concrete class for obtaining the interpolated velocity values at a point.
virtual int SnapPointOnCell(double *pOrigin, double *pProj)
Project the provided point on current cell, current dataset.
~vtkInterpolatedVelocityField() override=default
int FunctionValues(vtkDataSet *ds, double *x, double *f) override
Evaluate the velocity field f at point (x, y, z) in a specified dataset by either involving vtkPointL...
static vtkInterpolatedVelocityField * New()
Construct a vtkInterpolatedVelocityField without an initial dataset.
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 used for the implicit function evaluation.
void SetLastCellId(vtkIdType c) override
Set the cell id cached by the last evaluation.
void PrintSelf(ostream &os, vtkIndent indent) override
Standard methods for type information and printing.
int vtkIdType
Definition: vtkType.h:332