VTK  9.0.1
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 
53 #include "vtkFiltersFlowPathsModule.h" // For export macro
54 
56 class vtkCellLocatorInterpolatedVelocityFieldCellLocatorsType;
57 
58 class VTKFILTERSFLOWPATHS_EXPORT vtkCellLocatorInterpolatedVelocityField
60 {
61 public:
63  void PrintSelf(ostream& os, vtkIndent indent) override;
64 
70 
72 
75  vtkGetObjectMacro(LastCellLocator, vtkAbstractCellLocator);
77 
79 
86  void SetCellLocatorPrototype(vtkAbstractCellLocator* prototype);
87  vtkGetObjectMacro(CellLocatorPrototype, vtkAbstractCellLocator);
89 
94 
102  void AddDataSet(vtkDataSet* dataset) override;
103 
108  int FunctionValues(double* x, double* f) override;
109 
113  void SetLastCellId(vtkIdType c, int dataindex) override;
114 
118  void SetLastCellId(vtkIdType c) override { this->Superclass::SetLastCellId(c); }
119 
120 protected:
123 
130  int FunctionValues(vtkDataSet* ds, vtkAbstractCellLocator* loc, double* x, double* f);
131 
137  int FunctionValues(vtkDataSet* ds, double* x, double* f) override
138  {
139  return this->Superclass::FunctionValues(ds, x, f);
140  }
141 
142 private:
143  vtkAbstractCellLocator* LastCellLocator;
144  vtkAbstractCellLocator* CellLocatorPrototype;
145  vtkCellLocatorInterpolatedVelocityFieldCellLocatorsType* CellLocators;
146 
148  void operator=(const vtkCellLocatorInterpolatedVelocityField&) = delete;
149 };
150 
151 #endif
vtkCompositeInterpolatedVelocityField::AddDataSet
virtual void AddDataSet(vtkDataSet *dataset)=0
Add a dataset for implicit velocity function evaluation.
vtkAbstractInterpolatedVelocityField::SetLastCellId
virtual void SetLastCellId(vtkIdType c)
Definition: vtkAbstractInterpolatedVelocityField.h:116
vtkIdType
int vtkIdType
Definition: vtkType.h:338
vtkCompositeInterpolatedVelocityField.h
vtkObject::New
static vtkObject * New()
Create an object with Debug turned off, modified time initialized to zero, and reference counting on.
vtkCompositeInterpolatedVelocityField
An abstract class for obtaining the interpolated velocity values at a point.
Definition: vtkCompositeInterpolatedVelocityField.h:47
vtkCellLocatorInterpolatedVelocityField
A concrete class for obtaining the interpolated velocity values at a point.
Definition: vtkCellLocatorInterpolatedVelocityField.h:58
vtkCellLocatorInterpolatedVelocityField::SetLastCellId
void SetLastCellId(vtkIdType c) override
Set the cell id cached by the last evaluation.
Definition: vtkCellLocatorInterpolatedVelocityField.h:118
vtkIndent
a simple class to control print indentation
Definition: vtkIndent.h:33
vtkCompositeInterpolatedVelocityField::PrintSelf
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
vtkAbstractInterpolatedVelocityField::FunctionValues
int FunctionValues(double *x, double *f) override=0
Evaluate the velocity field f at point (x, y, z).
vtkAbstractCellLocator
an abstract base class for locators which find cells
Definition: vtkAbstractCellLocator.h:48
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
vtkAbstractInterpolatedVelocityField::CopyParameters
virtual void CopyParameters(vtkAbstractInterpolatedVelocityField *from)
Import parameters.
vtkCellLocatorInterpolatedVelocityField::FunctionValues
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...
Definition: vtkCellLocatorInterpolatedVelocityField.h:137