WindowedSincPolyDataFilter
Introduction
vtkWindowedSincPolyDataFilter - adjust point positions using a windowed sinc function interpolation kernel
vtkWindowedSincPolyDataFilter adjusts point coordinates using a windowed sinc function interpolation kernel. The effect is to "relax" the mesh, making the cells better shaped and the vertices more evenly distributed. Note that this filter operates on the lines, polygons, and triangle strips composing an instance of vtkPolyData. Vertex or poly-vertex cells are never modified.
The algorithm is described in "Optimal Surface Smoothing as Filter Design", G. Taubin, T. Zhang and G. Golub, IBM tech report RC-20404.
Methods
extend
Method used to decorate a given object (publicAPI+model) with vtkWindowedSincPolyDataFilter characteristics.
| Argument | Type | Required | Description |
|---|---|---|---|
publicAPI | Yes | object on which methods will be bounds (public) | |
model | Yes | object on which data structure will be bounds (protected) | |
initialValues | IWindowedSincPolyDataFilterInitialValues | No | (default: {}) |
getBoundarySmoothing
Get whether points on the boundary of the mesh are smoothed.
getEdgeAngle
Get the angle, in degrees, above which an edge between two adjacent boundary or feature edges is considered sharp and its vertex is fixed.
getFeatureAngle
Get the angle, in degrees, above which the edge between two adjacent polygons is a feature edge.
getFeatureEdgeSmoothing
Get whether feature edges are smoothed.
getGenerateErrorScalars
Get whether a scalar array holding the distance each point moved is added to the output.
getGenerateErrorVectors
Get whether a vector array holding the displacement of each point is added to the output.
getNonManifoldSmoothing
Get whether non-manifold vertices are smoothed.
getNormalizeCoordinates
Get whether the coordinates are normalized to the unit cube before smoothing and restored afterwards.
getNumberOfIterations
Get the degree of the Chebyshev polynomial approximating the filter.
getPassBand
Get the pass band of the windowed sinc filter, in [0, 2].
newInstance
Method used to create a new instance of vtkWindowedSincPolyDataFilter
| Argument | Type | Required | Description |
|---|---|---|---|
initialValues | IWindowedSincPolyDataFilterInitialValues | No | for pre-setting some of its content |
requestData
| Argument | Type | Required | Description |
|---|---|---|---|
inData | Yes | ||
outData | Yes |
setBoundarySmoothing
Set whether points on the boundary of the mesh are smoothed.
| Argument | Type | Required | Description |
|---|---|---|---|
boundarySmoothing | Number | Yes |
setEdgeAngle
Set the angle, in degrees, above which an edge between two adjacent boundary or feature edges is considered sharp and its vertex is fixed.
| Argument | Type | Required | Description |
|---|---|---|---|
edgeAngle | Number | Yes |
setFeatureAngle
Set the angle, in degrees, above which the edge between two adjacent polygons is a feature edge.
| Argument | Type | Required | Description |
|---|---|---|---|
featureAngle | Number | Yes |
setFeatureEdgeSmoothing
Set whether feature edges are smoothed.
| Argument | Type | Required | Description |
|---|---|---|---|
featureEdgeSmoothing | Number | Yes |
setGenerateErrorScalars
Set whether a scalar array holding the distance each point moved is added to the output.
| Argument | Type | Required | Description |
|---|---|---|---|
generateErrorScalars | Number | Yes |
setGenerateErrorVectors
Set whether a vector array holding the displacement of each point is added to the output.
| Argument | Type | Required | Description |
|---|---|---|---|
generateErrorVectors | Number | Yes |
setNonManifoldSmoothing
Set whether non-manifold vertices are smoothed.
| Argument | Type | Required | Description |
|---|---|---|---|
nonManifoldSmoothing | Number | Yes |
setNormalizeCoordinates
Set whether the coordinates are normalized to the unit cube before smoothing and restored afterwards.
| Argument | Type | Required | Description |
|---|---|---|---|
normalizeCoordinates | Number | Yes |
setNumberOfIterations
Set the degree of the Chebyshev polynomial approximating the filter.
| Argument | Type | Required | Description |
|---|---|---|---|
numberOfIterations | Number | Yes |
setPassBand
Set the pass band of the windowed sinc filter, in [0, 2].
| Argument | Type | Required | Description |
|---|---|---|---|
passBand | Number | Yes |
vtkWindowedSincPolyDataFilterExecute
Smooth inPts using the topology of inputPolyData and return the new point set. The error scalars and vectors, when requested, are added to output. Returns inPts unchanged when there is nothing to smooth.
| Argument | Type | Required | Description |
|---|---|---|---|
inPts | vtkPoints | Yes | |
inputPolyData | vtkPolyData | Yes | |
output | vtkPolyData | Yes |