VTK  9.2.6
vtkUnstructuredGridQuadricDecimation.h
Go to the documentation of this file.
1 /*=========================================================================
2 
3  Program: Visualization Toolkit
4  Module: vtkUnstructuredGridQuadricDecimation.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  Copyright 2007, 2008 by University of Utah.
15 
16 =========================================================================*/
17 
65 #ifndef vtkUnstructuredGridQuadricDecimation_h
66 #define vtkUnstructuredGridQuadricDecimation_h
67 
68 #include "vtkFiltersCoreModule.h" // For export macro
70 
71 class VTKFILTERSCORE_EXPORT vtkUnstructuredGridQuadricDecimation
73 {
74 public:
76  void PrintSelf(ostream& os, vtkIndent indent) override;
78 
79  // The following 3 parameters will control the process of simplification in
80  // the priority:
81  // NumberOfEdgesToDecimate, NumberOfTetsOutput, TargetReduction.
82  // If NumberOfEdgesToDecimate is 0, NumberOfTetsOutput will be considered. If
83  // NumbersOfTetsOutput is also 0, then TargetReduction will control the
84  // output.
85 
87 
91  vtkSetMacro(TargetReduction, double);
92  vtkGetMacro(TargetReduction, double);
94 
96 
99  vtkSetMacro(NumberOfTetsOutput, int);
100  vtkGetMacro(NumberOfTetsOutput, int);
102 
104 
107  vtkSetMacro(NumberOfEdgesToDecimate, int);
108  vtkGetMacro(NumberOfEdgesToDecimate, int);
110 
112 
117  vtkSetMacro(NumberOfCandidates, int);
118  vtkGetMacro(NumberOfCandidates, int);
120 
122 
131  vtkSetMacro(AutoAddCandidates, int);
132  vtkGetMacro(AutoAddCandidates, int);
134 
136 
140  vtkSetMacro(AutoAddCandidatesThreshold, double);
141  vtkGetMacro(AutoAddCandidatesThreshold, double);
143 
145 
149  vtkSetMacro(BoundaryWeight, double);
150  vtkGetMacro(BoundaryWeight, double);
152 
154 
157  vtkSetStringMacro(ScalarsName);
158  vtkGetStringMacro(ScalarsName);
160 
161  enum
162  {
163  NON_ERROR = 0,
164  NON_TETRAHEDRA = 1,
165  NO_SCALARS = 2,
166  NO_CELLS = 3
167  };
168 
169 protected:
172 
173  void ReportError(int err);
175 
180 
184  char* ScalarsName;
185 
186 private:
188  void operator=(const vtkUnstructuredGridQuadricDecimation&) = delete;
189 };
190 
191 #endif
virtual int RequestData(vtkInformation *request, vtkInformationVector **inputVector, vtkInformationVector *outputVector)
This is called by the superclass.
Store vtkAlgorithm input/output information.
static vtkUnstructuredGridAlgorithm * New()
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
a simple class to control print indentation
Definition: vtkIndent.h:39
Superclass for algorithms that produce only unstructured grid as output.
Store zero or more vtkInformation instances.
reduce the number of tetrahedra in a mesh