VTK
|
00001 /*========================================================================= 00002 00003 Program: Visualization Toolkit 00004 Module: $RCSfile$ 00005 00006 Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen 00007 All rights reserved. 00008 See Copyright.txt or http://www.kitware.com/Copyright.htm for details. 00009 00010 This software is distributed WITHOUT ANY WARRANTY; without even 00011 the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR 00012 PURPOSE. See the above copyright notice for more information. 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 // Not implemented. 00103 void operator=(const vtkReebGraphSimplificationMetric&); 00104 // Not implemented. 00105 }; 00106 00107 #endif