VTK
vtkAttributesErrorMetric.h
Go to the documentation of this file.
1 /*=========================================================================
2 
3  Program: Visualization Toolkit
4  Module: vtkAttributesErrorMetric.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 =========================================================================*/
30 #ifndef __vtkAttributesErrorMetric_h
31 #define __vtkAttributesErrorMetric_h
32 
33 #include "vtkGenericSubdivisionErrorMetric.h"
34 
35 class vtkGenericAttributeCollection;
36 class vtkGenericDataSet;
37 
38 class VTK_FILTERING_EXPORT vtkAttributesErrorMetric : public vtkGenericSubdivisionErrorMetric
39 {
40 public:
43  static vtkAttributesErrorMetric *New();
44 
46 
47  vtkTypeMacro(vtkAttributesErrorMetric,vtkGenericSubdivisionErrorMetric);
48  void PrintSelf(ostream& os, vtkIndent indent);
50 
52 
57  vtkGetMacro(AbsoluteAttributeTolerance, double);
59 
67  void SetAbsoluteAttributeTolerance(double value);
68 
70 
75  vtkGetMacro(AttributeTolerance, double);
77 
81  void SetAttributeTolerance(double value);
82 
84 
98  int RequiresEdgeSubdivision(double *leftPoint, double *midPoint, double *rightPoint,
99  double alpha);
101 
103 
112  double GetError(double *leftPoint, double *midPoint,
113  double *rightPoint, double alpha);
115 
116 protected:
118  virtual ~vtkAttributesErrorMetric();
119 
122  void ComputeSquareAbsoluteAttributeTolerance();
123 
125 
126  double SquareAbsoluteAttributeTolerance; // cached value computed from
127  // AttributeTolerance and active attribute/component
128 
131 
133 
134  double Range; // cached value computed from active attribute/component
135 
136  vtkGenericAttributeCollection *AttributeCollection;
137 
138 private:
139  vtkAttributesErrorMetric(const vtkAttributesErrorMetric&); // Not implemented.
140  void operator=(const vtkAttributesErrorMetric&); // Not implemented.
141 };
142 
143 #endif
144 
vtkGenericAttributeCollection * AttributeCollection
#define VTK_FILTERING_EXPORT
record modification and/or execution time
Definition: vtkTimeStamp.h:33
Objects that compute attribute-based error during cell tessellation.
a simple class to control print indentation
Definition: vtkIndent.h:37
vtkTimeStamp SquareAbsoluteAttributeToleranceComputeTime