VTK  9.1.0
vtkReebGraphSimplificationMetric.h
Go to the documentation of this file.
1/*=========================================================================
2
3 Program: Visualization Toolkit
4 Module: vtkReebGraphSimplificationMetric.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=========================================================================*/
46#ifndef vtkReebGraphSimplificationMetric_h
47#define vtkReebGraphSimplificationMetric_h
48
49#include "vtkCommonDataModelModule.h" // For export macro
50#include "vtkObject.h"
51
52class vtkDataSet;
53class vtkDataArray;
55
56class VTKCOMMONDATAMODEL_EXPORT vtkReebGraphSimplificationMetric : public vtkObject
57{
58public:
61 void PrintSelf(ostream& os, vtkIndent indent) override;
62
64
70 vtkSetMacro(LowerBound, double);
71 vtkGetMacro(LowerBound, double);
73
75
81 vtkSetMacro(UpperBound, double);
82 vtkGetMacro(UpperBound, double);
84
92 virtual double ComputeMetric(vtkDataSet* mesh, vtkDataArray* field, vtkIdType startCriticalPoint,
93 vtkAbstractArray* vertexList, vtkIdType endCriticalPoint);
94
95protected:
98
99 double LowerBound, UpperBound;
100
101private:
103 void operator=(const vtkReebGraphSimplificationMetric&) = delete;
104};
105
106#endif
Abstract superclass for all arrays.
abstract superclass for arrays of numeric data
Definition: vtkDataArray.h:159
abstract class to specify dataset behavior
Definition: vtkDataSet.h:166
a simple class to control print indentation
Definition: vtkIndent.h:113
abstract base class for most VTK objects
Definition: vtkObject.h:73
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:183
int vtkIdType
Definition: vtkType.h:332