# Filters¶

Filters transform the data, but do not display it. They are used as an intermediate between the data sources and the modules.

Here is a list of the Mayavi Filters.

- CellDerivatives
Computes derivatives from input point scalar and vector data and produces cell data on the gradients. Can be used to approximately calculate the vorticity for example.

- CellToPointData
Transforms cell attribute data to point data by averaging the cell data from the cells at the point.

- Contour
A contour filter that wraps around the Contour component to generate iso-surfaces on any input dataset.

- CutPlane
This filter represents a cut plane that can be used to slice through any dataset. It also provides a 3D widget interface to position and move the slice interactively.

- DataSetClipper
This filter clips the dataset in an area. The area can be defined interactively as a box, a sphere…

- DecimatePro
Reduces the number of triangles in a triangular mesh by approximating the original mesh.

- Delaunay2D
Performs a 2D Delaunay triangulation.

- Delaunay3D
Performs a 3D Delaunay triangulation.

- ElevationFilter
Creates scalar data corresponding to the elevation of the points along a line.

- ExtractEdges
This filter extracts cell edges from any input data.

- ExtractGrid
Allows a user to select a part of a structured grid.

- ExtractTensorComponents
Wraps the TVTK

`ExtractTensorComponents`

filter to extract components from a tensor field.- ExtractUnstructuredGrid
Allows a user to select a part of an unstructured grid.

- ExtractVectorNorm
Computes the norm (Euclidean) of the input vector data (with optional scaling between [0, 1]). This is useful when the input data has vector input but no scalar data for the magnitude of the vectors.

- ExtractVectorComponents
Wraps the TVTK ExtractVectorComponents filter to extract components of a vector. This is useful for analyzing individual components of a vector data.

- GaussianSplatter
This filter splat points into a volume with an elliptical, Gaussian distribution. This is useful to estimate a density field from a set of scattered points.

- GreedyTerrainDecimation
Approximates a height field (2D image data) with a triangle mesh, keeping the number of triangles minimum.

- ImageChangeInformation
A filter that can be used to change the origin, spacing and extents of an input image data dataset without changing the data itself.

- ImageDataProbe
A filter that can be used to probe any dataset using a Structured Points dataset. The filter also allows one to convert the scalar data to an unsigned short array so that the scalars can be used for volume visualization.

- MaskPoints
Selectively passes the input points downstream. This can be used to subsample the input points. Note that this does not pass geometry data, this means all grid information is lost.

- PointToCellData
Does the inverse of the CellToPointData filter: converts data located on the points to data located on the cells.

- PolyDataNormals
Computes normals from input data. This gives meshes a smoother appearance. This should work for any input dataset. Note: this filter is called “Compute Normals” in Mayavi2 GUI (Visualize/Filters/Compute Normals).

- QuadricDecimation
Reduce triangles in a mesh, forming a good approximation of the original mesh.

- SelectOutput
A filter that allows a user to select one among several of the outputs of a given input. This is typically very useful for a multi-block data source.

- SetActiveAttribute
This filter lets a user set the active data attribute (scalars, vectors and tensors) on a VTK dataset. This is particularly useful if you need to do something like compute contours of one scalar on the contour of another scalar.

- Stripper
Create triangle strips and/or poly-lines. Useful for regularizing broken up surfaces, such as those created by the Tube filter.

- Threshold
A simple filter that thresholds on input data.

- TransformData
Performs a linear transformation to input data.

- Tube
Turns lines into tubes.

- UserDefined
This filter lets the user define their own filter dynamically/interactively.

- Vorticity
This filter computes the vorticity of an input vector field. For convenience, the filter allows one to optionally pass-through the given input vector field. The filter also allows the user to show the component of the vorticity along a particular cartesian co-ordinate axes. It produces point data on output which is ready to visualize.

- WarpScalar
Warps the input data along a particular direction (either the normals or a specified direction) with a scale specified by the local scalar value. Useful for making carpet plots. The scalar value of a dataset can be, for instance, converted in elevation.

- WarpVector
Warps the input data along the point vector attribute scaled as per a scale factor. Useful for showing flow profiles or displacements.