VTK  9.0.1
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*);
43  void SetAMRData(vtkOverlappingAMR* amr);
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
vtkAbstractInterpolatedVelocityField::SetLastCellId
virtual void SetLastCellId(vtkIdType c)
Definition: vtkAbstractInterpolatedVelocityField.h:116
vtkIdType
int vtkIdType
Definition: vtkType.h:338
vtkObject::New
static vtkObject * New()
Create an object with Debug turned off, modified time initialized to zero, and reference counting on.
vtkAMRInterpolatedVelocityField::LastLevel
int LastLevel
Definition: vtkAMRInterpolatedVelocityField.h:79
vtkAMRInterpolatedVelocityField::AmrDataSet
vtkOverlappingAMR * AmrDataSet
Definition: vtkAMRInterpolatedVelocityField.h:78
vtkAMRInterpolatedVelocityField
A concrete class for obtaining the interpolated velocity values at a point in AMR data.
Definition: vtkAMRInterpolatedVelocityField.h:34
vtkAbstractInterpolatedVelocityField::PrintSelf
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
vtkX3D::level
@ level
Definition: vtkX3D.h:401
vtkAMRInterpolatedVelocityField::LastId
int LastId
Definition: vtkAMRInterpolatedVelocityField.h:80
vtkAMRInterpolatedVelocityField::SetLastCellId
void SetLastCellId(vtkIdType c) override
Set the cell id cached by the last evaluation.
Definition: vtkAMRInterpolatedVelocityField.h:54
vtkAbstractInterpolatedVelocityField.h
vtkIndent
a simple class to control print indentation
Definition: vtkIndent.h:33
vtkAMRInterpolatedVelocityField::FunctionValues
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...
Definition: vtkAMRInterpolatedVelocityField.h:84
vtkFunctionSet::FunctionValues
virtual int FunctionValues(double *x, double *f)
Evaluate functions at x_j.
Definition: vtkFunctionSet.h:49
vtkAbstractInterpolatedVelocityField::FunctionValues
int FunctionValues(double *x, double *f) override=0
Evaluate the velocity field f at point (x, y, z).
vtkOverlappingAMR
hierarchical dataset of vtkUniformGrids
Definition: vtkOverlappingAMR.h:40
vtkDataSet
abstract class to specify dataset behavior
Definition: vtkDataSet.h:56
vtkAbstractInterpolatedVelocityField
An abstract class for obtaining the interpolated velocity values at a point.
Definition: vtkAbstractInterpolatedVelocityField.h:82