VTK  9.0.2
vtkAMRInterpolatedVelocityField.h
Go to the documentation of this file.
1 /*=========================================================================
2 
3  Program: Visualization Toolkit
4  Module: vtkAMRInterpolatedVelocityField.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 =========================================================================*/
25 #ifndef vtkAMRInterpolatedVelocityField_h
26 #define vtkAMRInterpolatedVelocityField_h
27 
28 #include "vtkFiltersFlowPathsModule.h" // For export macro
29 
31 
32 class vtkOverlappingAMR;
33 
34 class VTKFILTERSFLOWPATHS_EXPORT vtkAMRInterpolatedVelocityField
36 {
37 public:
39 
41 
42  vtkGetMacro(AmrDataSet, vtkOverlappingAMR*);
44 
45  bool GetLastDataSetLocation(unsigned int& level, unsigned int& id);
46 
47  bool SetLastDataSet(int level, int id);
48 
49  void SetLastCellId(vtkIdType c, int dataindex) override;
50 
54  void SetLastCellId(vtkIdType c) override { this->Superclass::SetLastCellId(c); }
55 
68  int FunctionValues(double* x, double* f) override;
69 
70  void PrintSelf(ostream& os, vtkIndent indent) override;
71 
72  // Descriptino:
73  // Point location routine.
74  static bool FindGrid(
75  double q[3], vtkOverlappingAMR* amrds, unsigned int& level, unsigned int& gridId);
76 
77 protected:
79  int LastLevel;
80  int LastId;
81 
84  int FunctionValues(vtkDataSet* ds, double* x, double* f) override
85  {
86  return this->Superclass::FunctionValues(ds, x, f);
87  }
88 
89 private:
91  void operator=(const vtkAMRInterpolatedVelocityField&) = delete;
92 };
93 
94 #endif
A concrete class for obtaining the interpolated velocity values at a point in AMR data.
bool SetLastDataSet(int level, int id)
bool GetLastDataSetLocation(unsigned int &level, unsigned int &id)
int FunctionValues(vtkDataSet *ds, double *x, double *f) override
Evaluate the velocity field f at point (x, y, z) in a specified dataset by invoking vtkDataSet::FindC...
static bool FindGrid(double q[3], vtkOverlappingAMR *amrds, unsigned int &level, unsigned int &gridId)
int FunctionValues(double *x, double *f) override
Evaluate the velocity field f at point p.
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.
void SetAMRData(vtkOverlappingAMR *amr)
static vtkAMRInterpolatedVelocityField * New()
void SetLastCellId(vtkIdType c, int dataindex) override
Set the id of the most recently visited cell of a dataset.
An abstract class for obtaining the interpolated velocity values at a point.
abstract class to specify dataset behavior
Definition: vtkDataSet.h:57
virtual int FunctionValues(double *x, double *f)
Evaluate functions at x_j.
a simple class to control print indentation
Definition: vtkIndent.h:34
hierarchical dataset of vtkUniformGrids
@ level
Definition: vtkX3D.h:401
int vtkIdType
Definition: vtkType.h:338