VTK  9.4.20250306
vtkUnstructuredGridQuadricDecimation.h
Go to the documentation of this file.
1// SPDX-FileCopyrightText: Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen
2// SPDX-FileCopyrightText: Copyright 2007, 2008 by University of Utah
3// SPDX-License-Identifier: BSD-3-Clause
51#ifndef vtkUnstructuredGridQuadricDecimation_h
52#define vtkUnstructuredGridQuadricDecimation_h
53
54#include "vtkFiltersCoreModule.h" // For export macro
56
57VTK_ABI_NAMESPACE_BEGIN
58class VTKFILTERSCORE_EXPORT vtkUnstructuredGridQuadricDecimation
60{
61public:
63 void PrintSelf(ostream& os, vtkIndent indent) override;
65
66 // The following 3 parameters will control the process of simplification in
67 // the priority:
68 // NumberOfEdgesToDecimate, NumberOfTetsOutput, TargetReduction.
69 // If NumberOfEdgesToDecimate is 0, NumberOfTetsOutput will be considered. If
70 // NumbersOfTetsOutput is also 0, then TargetReduction will control the
71 // output.
72
74
78 vtkSetMacro(TargetReduction, double);
79 vtkGetMacro(TargetReduction, double);
81
83
86 vtkSetMacro(NumberOfTetsOutput, int);
87 vtkGetMacro(NumberOfTetsOutput, int);
89
91
94 vtkSetMacro(NumberOfEdgesToDecimate, int);
95 vtkGetMacro(NumberOfEdgesToDecimate, int);
97
99
104 vtkSetMacro(NumberOfCandidates, int);
105 vtkGetMacro(NumberOfCandidates, int);
107
109
118 vtkSetMacro(AutoAddCandidates, int);
119 vtkGetMacro(AutoAddCandidates, int);
121
123
127 vtkSetMacro(AutoAddCandidatesThreshold, double);
128 vtkGetMacro(AutoAddCandidatesThreshold, double);
130
132
136 vtkSetMacro(BoundaryWeight, double);
137 vtkGetMacro(BoundaryWeight, double);
139
141
144 vtkSetStringMacro(ScalarsName);
145 vtkGetStringMacro(ScalarsName);
147
148 enum
149 {
150 NON_ERROR = 0,
151 NON_TETRAHEDRA = 1,
152 NO_SCALARS = 2,
153 NO_CELLS = 3
154 };
155
156protected:
159
160 void ReportError(int err);
162
167
172
173private:
175 void operator=(const vtkUnstructuredGridQuadricDecimation&) = delete;
176};
177
178VTK_ABI_NAMESPACE_END
179#endif
a simple class to control print indentation
Definition vtkIndent.h:108
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.