VTK
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 =========================================================================*/
28 #ifndef vtkAMRInterpolatedVelocityField_h
29 #define vtkAMRInterpolatedVelocityField_h
30 
31 #include "vtkFiltersFlowPathsModule.h" // For export macro
32 
34 
35 class vtkOverlappingAMR;
36 
37 class VTKFILTERSFLOWPATHS_EXPORT vtkAMRInterpolatedVelocityField
39 {
40 public:
41  vtkTypeMacro( vtkAMRInterpolatedVelocityField,
43 
45 
46  vtkGetMacro(AmrDataSet,vtkOverlappingAMR*);
47  void SetAMRData(vtkOverlappingAMR* amr);
48 
49  bool GetLastDataSetLocation(unsigned int& level, unsigned int& id);
50 
51  bool SetLastDataSet(int level, int id);
52 
53  void SetLastCellId( vtkIdType c, int dataindex ) override;
54 
58  void SetLastCellId( vtkIdType c ) override
59  { this->Superclass::SetLastCellId( c ); }
60 
72  int FunctionValues( double * x, double * f ) override;
73 
74  void PrintSelf( ostream & os, vtkIndent indent ) override;
75 
76  // Descriptino:
77  // Point location routine.
78  static bool FindGrid(double q[3],vtkOverlappingAMR *amrds, unsigned int& level, unsigned int& gridId);
79 
80 protected:
82  int LastLevel;
83  int LastId;
84 
87  int FunctionValues( vtkDataSet * ds, double * x, double * f ) override
88  { return this->Superclass::FunctionValues( ds, x, f ); }
89 
90 private:
92  void operator = ( const vtkAMRInterpolatedVelocityField& ) = delete;
93 
94 };
95 
96 #endif
abstract class to specify dataset behavior
Definition: vtkDataSet.h:62
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...
An abstract class for obtaining the interpolated velocity values at a point.
int vtkIdType
Definition: vtkType.h:347
virtual int FunctionValues(double *x, double *f)=0
Evaluate functions at x_j.
a simple class to control print indentation
Definition: vtkIndent.h:39
int FunctionValues(double *x, double *f) override=0
Evaluate the velocity field f at point (x, y, z).
void SetLastCellId(vtkIdType c) override
Set the cell id cached by the last evaluation.
virtual void SetLastCellId(vtkIdType c)
Get/Set the id of the cell cached from last evaluation.
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
hierarchical dataset of vtkUniformGrids
static vtkObject * New()
Create an object with Debug turned off, modified time initialized to zero, and reference counting on...
A concrete class for obtaining the interpolated velocity values at a point in AMR data...