vtkCellIntegrator.h
Go to the documentation of this file.
1 // SPDX-FileCopyrightText: Copyright (c) Kitware Inc.
2 // SPDX-FileCopyrightText: Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen
3 // SPDX-License-Identifier: BSD-3-Clause
15 #ifndef vtkCellIntegrator_h
16 #define vtkCellIntegrator_h
17 
18 #include "vtkObject.h"
19 #include "vtkPVVTKExtensionsFiltersGeneralModule.h" //needed for exports
20 
21 class vtkDataSet;
22 class vtkIdList;
23 
25 {
26 public:
27  vtkTypeMacro(vtkCellIntegrator, vtkObject);
28  void PrintSelf(ostream& os, vtkIndent indent) override;
29 
35  static double Integrate(vtkDataSet* input, vtkIdType cellId);
36 
37 protected:
38  vtkCellIntegrator() = default;
39  ~vtkCellIntegrator() override = default;
40 
41 private:
42  static double IntegratePolyLine(vtkDataSet* input, vtkIdType cellId, vtkIdList* ptIds);
43  static double IntegrateTriangleStrip(vtkDataSet* input, vtkIdType cellId, vtkIdList* ptIds);
44  static double IntegratePolygon(vtkDataSet* input, vtkIdType cellId, vtkIdList* ptIds);
45  static double IntegratePixel(vtkDataSet* input, vtkIdType cellId, vtkIdList* cellPtIds);
46  static double IntegrateTriangle(
47  vtkDataSet* input, vtkIdType cellId, vtkIdType pt1Id, vtkIdType pt2Id, vtkIdType pt3Id);
48  static double IntegrateTetrahedron(vtkDataSet* input, vtkIdType cellId, vtkIdType pt1Id,
49  vtkIdType pt2Id, vtkIdType pt3Id, vtkIdType pt4Id);
50  static double IntegrateVoxel(vtkDataSet* input, vtkIdType cellId, vtkIdList* cellPtIds);
51  static double IntegrateGeneral1DCell(vtkDataSet* input, vtkIdType cellId, vtkIdList* ptIds);
52  static double IntegrateGeneral2DCell(vtkDataSet* input, vtkIdType cellId, vtkIdList* ptIds);
53  static double IntegrateGeneral3DCell(vtkDataSet* input, vtkIdType cellId, vtkIdList* ptIds);
54 
55  vtkCellIntegrator(const vtkCellIntegrator&) = delete;
56  void operator=(const vtkCellIntegrator&) = delete;
57 };
58 
59 #endif
void PrintSelf(ostream &os, vtkIndent indent) VTK_OVERRIDE
int vtkIdType
Calculates length/area/volume of a cell.
#define VTKPVVTKEXTENSIONSFILTERSGENERAL_EXPORT
void operator=(const vtkObjectBase &)