VTK
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 =========================================================================*/
49 #ifndef vtkCellLocatorInterpolatedVelocityField_h
50 #define vtkCellLocatorInterpolatedVelocityField_h
51 
52 #include "vtkFiltersFlowPathsModule.h" // For export macro
54 
56 class vtkCellLocatorInterpolatedVelocityFieldCellLocatorsType;
57 
59 {
60 public:
63  void PrintSelf( ostream & os, vtkIndent indent ) override;
64 
70 
72 
75  vtkGetObjectMacro( LastCellLocator, vtkAbstractCellLocator );
77 
79 
83  vtkGetObjectMacro( CellLocatorPrototype, vtkAbstractCellLocator );
85 
90  void SetCellLocatorPrototype( vtkAbstractCellLocator * prototype );
91 
103  void AddDataSet( vtkDataSet * dataset ) override;
104 
108  int FunctionValues( double * x, double * f ) override;
109 
113  void SetLastCellId( vtkIdType c, int dataindex ) override;
114 
118  void SetLastCellId( vtkIdType c ) override
119  { this->Superclass::SetLastCellId( c ); }
120 
121 protected:
124 
132  double * x, double * f );
133 
139  int FunctionValues( vtkDataSet * ds, double * x, double * f ) override
140  { return this->Superclass::FunctionValues( ds, x, f ); }
141 
142 private:
143  vtkAbstractCellLocator * LastCellLocator;
144  vtkAbstractCellLocator * CellLocatorPrototype;
145  vtkCellLocatorInterpolatedVelocityFieldCellLocatorsType * CellLocators;
146 
148  ( const vtkCellLocatorInterpolatedVelocityField & ) = delete;
149  void operator = ( const vtkCellLocatorInterpolatedVelocityField & ) = delete;
150 };
151 
152 #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 (of type vtkImageData or vtkR...
virtual void AddDataSet(vtkDataSet *dataset)=0
Add a dataset for implicit velocity function evaluation.
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
an abstract base class for locators which find cells
An abstract class for obtaining the interpolated velocity values at a point.
An abstract class for obtaining the interpolated velocity values at a point.
int vtkIdType
Definition: vtkType.h:347
virtual void CopyParameters(vtkAbstractInterpolatedVelocityField *from)
Import parameters.
a simple class to control print indentation
Definition: vtkIndent.h:39
void SetLastCellId(vtkIdType c) override
Set the cell id cached by the last evaluation.
A concrete 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.
static vtkObject * New()
Create an object with Debug turned off, modified time initialized to zero, and reference counting on...