VTK  9.3.20240418
vtkReebGraphSimplificationMetric.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
37 #ifndef vtkReebGraphSimplificationMetric_h
38 #define vtkReebGraphSimplificationMetric_h
39 
40 #include "vtkCommonDataModelModule.h" // For export macro
41 #include "vtkObject.h"
42 
43 VTK_ABI_NAMESPACE_BEGIN
44 class vtkDataSet;
45 class vtkDataArray;
46 class vtkAbstractArray;
47 
48 class VTKCOMMONDATAMODEL_EXPORT vtkReebGraphSimplificationMetric : public vtkObject
49 {
50 public:
53  void PrintSelf(ostream& os, vtkIndent indent) override;
54 
56 
62  vtkSetMacro(LowerBound, double);
63  vtkGetMacro(LowerBound, double);
65 
67 
73  vtkSetMacro(UpperBound, double);
74  vtkGetMacro(UpperBound, double);
76 
84  virtual double ComputeMetric(vtkDataSet* mesh, vtkDataArray* field, vtkIdType startCriticalPoint,
85  vtkAbstractArray* vertexList, vtkIdType endCriticalPoint);
86 
87 protected:
90 
91  double LowerBound, UpperBound;
92 
93 private:
95  void operator=(const vtkReebGraphSimplificationMetric&) = delete;
96 };
97 
98 VTK_ABI_NAMESPACE_END
99 #endif
Abstract superclass for all arrays.
abstract superclass for arrays of numeric data
Definition: vtkDataArray.h:155
abstract class to specify dataset behavior
Definition: vtkDataSet.h:166
a simple class to control print indentation
Definition: vtkIndent.h:108
abstract base class for most VTK objects
Definition: vtkObject.h:162
abstract class for custom Reeb graph simplification metric design.
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
virtual double ComputeMetric(vtkDataSet *mesh, vtkDataArray *field, vtkIdType startCriticalPoint, vtkAbstractArray *vertexList, vtkIdType endCriticalPoint)
Function to implement in your simplification metric algorithm.
static vtkReebGraphSimplificationMetric * New()
@ field
Definition: vtkX3D.h:177
int vtkIdType
Definition: vtkType.h:315