VTK  9.3.20240328
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 
66  const double x[3], vtkPoints* pts, vtkIdList* tris, double* weights);
67 
76  const double x[3], vtkPoints* pts, vtkCellArray* tris, double* weights);
77 
78 protected:
81 
86  const double x[3], vtkPoints* pts, vtkMVCTriIterator& iter, double* weights);
87 
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
object to represent cell connectivity
Definition: vtkCellArray.h:285
abstract superclass for arrays of numeric data
Definition: vtkDataArray.h:154
list of point or cell ids
Definition: vtkIdList.h:132
a simple class to control print indentation
Definition: vtkIndent.h:108
compute interpolation computes for closed triangular mesh
static void ComputeInterpolationWeightsForPolygonMesh(const double x[3], vtkPoints *pts, vtkMVCPolyIterator &iter, double *weights)
Internal method that sets up the processing of general polyhedron meshes.
static vtkMeanValueCoordinatesInterpolator * New()
Standard instantiable class methods.
static void ComputeInterpolationWeightsForTriangleMesh(const double x[3], vtkPoints *pts, vtkMVCTriIterator &iter, double *weights)
Internal method that sets up the processing of triangular meshes.
void PrintSelf(ostream &os, vtkIndent indent) override
Standard instantiable class methods.
static void ComputeInterpolationWeights(const double x[3], vtkPoints *pts, vtkCellArray *tris, double *weights)
Method to generate interpolation weights for a point x[3] from a list of polygonal faces.
static void ComputeInterpolationWeights(const double x[3], vtkPoints *pts, vtkIdList *tris, double *weights)
Method to generate interpolation weights for a point x[3] from a list of triangles.
abstract base class for most VTK objects
Definition: vtkObject.h:161
represent and manipulate 3D points
Definition: vtkPoints.h:138