00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00048 #ifndef __vtkReebGraphSimplificationMetric_h
00049 #define __vtkReebGraphSimplificationMetric_h
00050
00051 #include "vtkObject.h"
00052
00053 class vtkDataSet;
00054 class vtkDataArray;
00055 class vtkAbstractArray;
00056
00057 class VTK_FILTERING_EXPORT vtkReebGraphSimplificationMetric :
00058 public vtkObject
00059 {
00060 public:
00061 static vtkReebGraphSimplificationMetric* New();
00062 vtkTypeMacro(vtkReebGraphSimplificationMetric, vtkObject);
00063 void PrintSelf(ostream& os, vtkIndent indent);
00064
00066
00070 vtkSetMacro(LowerBound, double);
00071 vtkGetMacro(LowerBound, double);
00073
00075
00079 vtkSetMacro(UpperBound, double);
00080 vtkGetMacro(UpperBound, double);
00082
00084
00089 virtual double ComputeMetric(vtkDataSet *mesh, vtkDataArray *field,
00090 vtkIdType startCriticalPoint, vtkAbstractArray *vertexList,
00091 vtkIdType endCriticalPoint);
00093
00094 protected:
00095 vtkReebGraphSimplificationMetric();
00096 ~vtkReebGraphSimplificationMetric();
00097
00098 double LowerBound, UpperBound;
00099
00100 private:
00101 vtkReebGraphSimplificationMetric(const vtkReebGraphSimplificationMetric&);
00102
00103 void operator=(const vtkReebGraphSimplificationMetric&);
00104
00105 };
00106
00107 #endif