VTK  9.1.0
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
62#ifndef vtkUnstructuredGridQuadricDecimation_h
63#define vtkUnstructuredGridQuadricDecimation_h
64
65#include "vtkFiltersCoreModule.h" // For export macro
67
68class VTKFILTERSCORE_EXPORT vtkUnstructuredGridQuadricDecimation
70{
71public:
73 void PrintSelf(ostream& os, vtkIndent indent) override;
75
76 // The following 3 parameters will control the process of simplification in
77 // the priority:
78 // NumberOfEdgesToDecimate, NumberOfTetsOutput, TargetReduction.
79 // If NumberOfEdgesToDecimate is 0, NumberOfTetsOutput will be considered. If
80 // NumbersOfTetsOutput is also 0, then TargetReduction will control the
81 // output.
82
84
88 vtkSetMacro(TargetReduction, double);
89 vtkGetMacro(TargetReduction, double);
91
93
96 vtkSetMacro(NumberOfTetsOutput, int);
97 vtkGetMacro(NumberOfTetsOutput, int);
99
101
104 vtkSetMacro(NumberOfEdgesToDecimate, int);
105 vtkGetMacro(NumberOfEdgesToDecimate, int);
107
109
114 vtkSetMacro(NumberOfCandidates, int);
115 vtkGetMacro(NumberOfCandidates, int);
117
119
128 vtkSetMacro(AutoAddCandidates, int);
129 vtkGetMacro(AutoAddCandidates, int);
131
133
137 vtkSetMacro(AutoAddCandidatesThreshold, double);
138 vtkGetMacro(AutoAddCandidatesThreshold, double);
140
142
146 vtkSetMacro(BoundaryWeight, double);
147 vtkGetMacro(BoundaryWeight, double);
149
151
154 vtkSetStringMacro(ScalarsName);
155 vtkGetStringMacro(ScalarsName);
157
158 enum
159 {
160 NO_ERROR = 0,
161 NON_TETRAHEDRA = 1,
162 NO_SCALARS = 2,
163 NO_CELLS = 3
164 };
165
166protected:
169
170 void ReportError(int err);
172
177
182
183private:
185 void operator=(const vtkUnstructuredGridQuadricDecimation&) = delete;
186};
187
188#endif
a simple class to control print indentation
Definition: vtkIndent.h:113
Store zero or more vtkInformation instances.
Store vtkAlgorithm input/output information.
Superclass for algorithms that produce only unstructured grid as output.
reduce the number of tetrahedra in a mesh
int RequestData(vtkInformation *, vtkInformationVector **, vtkInformationVector *) override
This is called by the superclass.
static vtkUnstructuredGridQuadricDecimation * New()
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.