VTK  9.3.1
vtkMeanValueCoordinatesInterpolator.h
Go to the documentation of this file.
1 // SPDX-FileCopyrightText: Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen
2 // SPDX-License-Identifier: BSD-3-Clause
30 #ifndef vtkMeanValueCoordinatesInterpolator_h
31 #define vtkMeanValueCoordinatesInterpolator_h
32 
33 #include "vtkCommonDataModelModule.h" // For export macro
34 #include "vtkObject.h"
35 
36 VTK_ABI_NAMESPACE_BEGIN
37 class vtkPoints;
38 class vtkIdList;
39 class vtkCellArray;
40 class vtkDataArray;
41 
42 // Special internal class for iterating over data
43 class vtkMVCTriIterator;
44 class vtkMVCPolyIterator;
45 
46 class VTKCOMMONDATAMODEL_EXPORT vtkMeanValueCoordinatesInterpolator : public vtkObject
47 {
48 public:
50 
55  void PrintSelf(ostream& os, vtkIndent indent) override;
57 
65  static void ComputeInterpolationWeights(
66  const double x[3], vtkPoints* pts, vtkIdList* tris, double* weights);
67 
75  static void ComputeInterpolationWeights(
76  const double x[3], vtkPoints* pts, vtkCellArray* tris, double* weights);
77 
78 protected:
81 
85  static void ComputeInterpolationWeightsForTriangleMesh(
86  const double x[3], vtkPoints* pts, vtkMVCTriIterator& iter, double* weights);
87 
91  static void ComputeInterpolationWeightsForPolygonMesh(
92  const double x[3], vtkPoints* pts, vtkMVCPolyIterator& iter, double* weights);
93 
94 private:
96  void operator=(const vtkMeanValueCoordinatesInterpolator&) = delete;
97 };
98 
99 VTK_ABI_NAMESPACE_END
100 #endif
abstract base class for most VTK objects
Definition: vtkObject.h:51
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
a simple class to control print indentation
Definition: vtkIndent.h:28
list of point or cell ids
Definition: vtkIdList.h:22
abstract superclass for arrays of numeric data
Definition: vtkDataArray.h:44
compute interpolation computes for closed triangular mesh
object to represent cell connectivity
Definition: vtkCellArray.h:175
static vtkObject * New()
Create an object with Debug turned off, modified time initialized to zero, and reference counting on...
represent and manipulate 3D points
Definition: vtkPoints.h:28