VTK
vtkSmoothPolyDataFilter.h
Go to the documentation of this file.
1/*=========================================================================
2
3 Program: Visualization Toolkit
4 Module: vtkSmoothPolyDataFilter.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=========================================================================*/
99#ifndef vtkSmoothPolyDataFilter_h
100#define vtkSmoothPolyDataFilter_h
101
102#include "vtkFiltersCoreModule.h" // For export macro
103#include "vtkPolyDataAlgorithm.h"
104
105class vtkSmoothPoints;
106
107class VTKFILTERSCORE_EXPORT vtkSmoothPolyDataFilter : public vtkPolyDataAlgorithm
108{
109public:
111 void PrintSelf(ostream& os, vtkIndent indent) VTK_OVERRIDE;
112
121
123
127 vtkSetClampMacro(Convergence,double,0.0,1.0);
128 vtkGetMacro(Convergence,double);
130
132
135 vtkSetClampMacro(NumberOfIterations,int,0,VTK_INT_MAX);
136 vtkGetMacro(NumberOfIterations,int);
138
140
147 vtkSetMacro(RelaxationFactor,double);
148 vtkGetMacro(RelaxationFactor,double);
150
152
155 vtkSetMacro(FeatureEdgeSmoothing,int);
156 vtkGetMacro(FeatureEdgeSmoothing,int);
157 vtkBooleanMacro(FeatureEdgeSmoothing,int);
159
161
164 vtkSetClampMacro(FeatureAngle,double,0.0,180.0);
165 vtkGetMacro(FeatureAngle,double);
167
169
173 vtkSetClampMacro(EdgeAngle,double,0.0,180.0);
174 vtkGetMacro(EdgeAngle,double);
176
178
181 vtkSetMacro(BoundarySmoothing,int);
182 vtkGetMacro(BoundarySmoothing,int);
183 vtkBooleanMacro(BoundarySmoothing,int);
185
187
190 vtkSetMacro(GenerateErrorScalars,int);
191 vtkGetMacro(GenerateErrorScalars,int);
192 vtkBooleanMacro(GenerateErrorScalars,int);
194
196
199 vtkSetMacro(GenerateErrorVectors,int);
200 vtkGetMacro(GenerateErrorVectors,int);
201 vtkBooleanMacro(GenerateErrorVectors,int);
203
205
213
215
220 vtkSetMacro(OutputPointsPrecision,int);
221 vtkGetMacro(OutputPointsPrecision,int);
223
224protected:
226 ~vtkSmoothPolyDataFilter() VTK_OVERRIDE {}
227
230
236 double EdgeAngle;
241
242 vtkSmoothPoints *SmoothPoints;
243private:
244 vtkSmoothPolyDataFilter(const vtkSmoothPolyDataFilter&) VTK_DELETE_FUNCTION;
245 void operator=(const vtkSmoothPolyDataFilter&) VTK_DELETE_FUNCTION;
246};
247
248#endif
a simple class to control print indentation
Definition: vtkIndent.h:40
Store zero or more vtkInformation instances.
Store vtkAlgorithm input/output information.
Superclass for algorithms that produce only polydata as output.
concrete dataset represents vertices, lines, polygons, and triangle strips
Definition: vtkPolyData.h:86
adjust point positions using Laplacian smoothing
int FillInputPortInformation(int port, vtkInformation *info) override
Fill the input port information objects for this algorithm.
void SetSourceData(vtkPolyData *source)
Specify the source object which is used to constrain smoothing.
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
int RequestData(vtkInformation *, vtkInformationVector **, vtkInformationVector *) override
This is called by the superclass.
vtkPolyData * GetSource()
static vtkSmoothPolyDataFilter * New()
Construct object with number of iterations 20; relaxation factor .01; feature edge smoothing turned o...
@ info
Definition: vtkX3D.h:376
@ port
Definition: vtkX3D.h:447
boost::graph_traits< vtkGraph * >::vertex_descriptor source(boost::graph_traits< vtkGraph * >::edge_descriptor e, vtkGraph *)
vtkSetMacro(IgnoreDriverBugs, bool)
Updates the extensions string.
vtkBooleanMacro(IgnoreDriverBugs, bool)
Updates the extensions string.
#define VTK_INT_MAX
Definition: vtkType.h:153