VTK
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 
72 {
73 public:
75  void PrintSelf(ostream& os, vtkIndent indent) override;
77 
78  // The following 3 parameters will control the process of simplification in
79  // the priority:
80  // NumberOfEdgesToDecimate, NumberOfTetsOutput, TargetReduction.
81  // If NumberOfEdgesToDecimate is 0, NumberOfTetsOutput will be considered. If
82  // NumbersOfTetsOutput is also 0, then TargetReduction will control the
83  // output.
84 
86 
90  vtkSetMacro(TargetReduction, double);
91  vtkGetMacro(TargetReduction, double);
93 
95 
98  vtkSetMacro(NumberOfTetsOutput, int);
99  vtkGetMacro(NumberOfTetsOutput, int);
101 
103 
106  vtkSetMacro(NumberOfEdgesToDecimate, int);
107  vtkGetMacro(NumberOfEdgesToDecimate, int);
109 
111 
116  vtkSetMacro(NumberOfCandidates, int);
117  vtkGetMacro(NumberOfCandidates, int);
119 
121 
130  vtkSetMacro(AutoAddCandidates, int);
131  vtkGetMacro(AutoAddCandidates, int);
133 
135 
139  vtkSetMacro(AutoAddCandidatesThreshold, double);
140  vtkGetMacro(AutoAddCandidatesThreshold, double);
142 
144 
148  vtkSetMacro(BoundaryWeight, double);
149  vtkGetMacro(BoundaryWeight, double);
151 
153 
156  vtkSetStringMacro(ScalarsName);
157  vtkGetStringMacro(ScalarsName);
159 
160  enum
161  {
162  NO_ERROR=0,
163  NON_TETRAHEDRA=1,
164  NO_SCALARS=2,
165  NO_CELLS=3
166  };
167 
168 protected:
171 
172  void ReportError(int err);
174 
179 
183  char *ScalarsName;
184 
185 private:
187  void operator=(const vtkUnstructuredGridQuadricDecimation&) = delete;
188 
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