Difference between revisions of "VTK/Examples/Cxx"

From KitwarePublic
< VTK‎ | Examples
Jump to navigationJump to search
Line 120: Line 120:
| [[VTK/Examples/Cxx/IO/XMLStructuredGridWriter|XMLStructuredGridWriter]] || {{VTKDoxygenURL|vtkXMLStructuredGridWriter}} || Write a .vts file from a vtkStructuredGrid.
| [[VTK/Examples/Cxx/IO/XMLStructuredGridWriter|XMLStructuredGridWriter]] || {{VTKDoxygenURL|vtkXMLStructuredGridWriter}} || Write a .vts file from a vtkStructuredGrid.
| [[VTK/Examples/Cxx/IO/XMLPUnstructuredGridWriter|Write an unstructured grid to parallel files]] || {{VTKDoxygenURL|vtkXMLPUnstructuredGridWriter}} || Writes a .pvtu with 4 .vtu pieces.
| [[VTK/Examples/Cxx/IO/XMLPUnstructuredGridWriter|Write an unstructured grid to parallel files]] || {{VTKDoxygenURL|vtkXMLPUnstructuredGridWriter}} || Write a .pvtu with 4 .vtu pieces.
| [[VTK/Examples/Cxx/IO/XMLPImageDataWriter|Write an image file to parallel files]] || {{VTKDoxygenURL|vtkXMLPImageDataWriter}} || Write a .pvti file with 4 .vti pieces.
| [[VTK/Examples/Cxx/IO/XMLPImageDataWriter|Write an image file to parallel files]] || {{VTKDoxygenURL|vtkXMLPImageDataWriter}} || Write a .pvti file with 4 .vti pieces.
| [[VTK/Examples/Cxx/IO/ExodusIIWriter | Write an ExodusII file]] || {{VTKDoxygenURL|vtkExodusIIWriter}} || Write a time varying file.
| [[VTK/Examples/Cxx/IO/ExodusIIWriter | Write an ExodusII file]] || {{VTKDoxygenURL|vtkExodusIIWriter}} || Write a time varying ExodusII file.

Revision as of 11:58, 27 April 2017

These are fully independent, compilable examples. There is significant overlap in the examples, but they are each intended to illustrate a different concept and be fully stand alone compilable.

Please add examples in your areas of expertise!

Hello World

Example Name VTK Classes Demonstrated Description
A hello world example vtkPolyDataMapper vtkActor vtkRenderer vtkRenderWindow vtkRenderWindowInteractor Cylinder example from the VTK Textbook and source code.

Simple Operations

Example Name VTK Classes Demonstrated Description
DistanceBetweenPoints vtkMath::Distance2BetweenPoints Distance between two points.
DistancePointToLine vtkLine Distance between a point and a line.
FloatingPointExceptions vtkFloatingPointExceptions Floating Point Exceptions
GaussianRandomNumber vtkMath Generates Gaussian random numbers.
UniformRandomNumber vtkMath Generates uniform random numbers.
RandomSequence vtkMinimalStandardRandomSequence This is the preferred way to generate random numbers.
ProjectPointPlane vtkPlane Project a point onto a plane.
PerspectiveTransform vtkPerspectiveTransform Apply a perspective transformation to a point.

Input and Output

Graph Formats

3D File Formats

Example Name VTK Classes Demonstrated Description
ConvertFile Convert a file from one type to another
XGMLReader vtkXGMLReader Read a .gml file

Standard Formats

Example Name VTK Classes Demonstrated Description
SimplePointsReader vtkSimplePointsReader Read a simple "xyz" file of points.
ParticleReader vtkParticleReader This example reads ascii files where each line consists of points with its position (x,y,z) and (optionally) one scalar or binary files in RAW 3d file format.
ReadPlainText vtkPolyData Read a plain text file into a polydata.
ReadPlainTextTriangles vtkPolyData vtkSmartPointer vtkPoints vtkCellArray vtkXMLPolyDataWriter Read a plain text file into a polydata.
ReadDelimitedFile vtkDelimitedTextReader Read a delimited file into a polydata.
ReadOBJ vtkOBJReader Read an OBJ (.obj) file.
VRML vtkVRMLImporter Read a VRML (WRL) file.
IndividualVRML vtkVRMLImporter This example is used to get each actor and object from a scene and verify axes correspondence
ReadDICOM vtkDICOMImageReader Read DICOM file
ReadDICOMSeries vtkDICOMImageReader This example demonstrates how to read a series of DICOM images and scroll through slices
DumpXMLFile vtkDataSetReader Report the contents of a VTK XML or legacy file
DEMReader vtkDEMReader Read DEM (elevation map) files
ReadSTL vtkSTLReader Read stereo lithography STL (.stl) files
ReadPLY vtkPLYReader Read PLY (.ply) files
ReadPLOT3D vtkPLOT3DReader Read CFD (computational fluid dynamics) data produced by PLOT3D.
ReadPDB vtkPDBReader Read Protein Data Bank Files.
Example Name VTK Classes Demonstrated Description
DelimitedTextWriter vtkDelimitedTextWriter Write data to a delimited file
SimplePointsWriter vtkSimplePointsWriter Write a simple ".xyz" file
WritePLY vtkPLYWriter Write PLY (.ply) files
WriteSTL vtkSTLWriter Write stereo lithography STL (.stl) files

VTK Formats

Example Name VTK Classes Demonstrated Description
ReadImageData vtkXMLImageDataReader Read a image data (.vti) file
ReadPolyData vtkXMLPolyDataReader Read a polygonal data (.vtp) file
ReadRectilinearGrid vtkXMLRectilinearGridReader Read a rectilinear grid (.vtr) file
ReadStructuredGrid vtkXMLStructuredGridReader Read a structured grid (.vts) file
ReadUnknownTypeXMLFile vtkXMLGenericDataObjectReader Read an XML file and later decide what kind it is
ReadUnstructuredGrid vtkXMLUnstructuredGridReader Read an unstructured grid (.vtu) file
Example Name VTK Classes Demonstrated Description
WriteVTU vtkXMLUnstructuredGridWriter Write a .vtu file. VTU is an "Unstructured Grid". This format allows for 3D data to be stored.
WriteVTP vtkXMLPolyDataWriter Write a .vtp file. VTP is a "PolyData". This format allows for the most complex geometric objects to be stored.
WriteVTI vtkXMLImageDataWriter Write a .vti file. VTI is an "ImageData".
ExportDICOMtoVTI vtkXMLImageDataWriter Write a .vti file from a DICOM image.
XMLStructuredGridWriter vtkXMLStructuredGridWriter Write a .vts file from a vtkStructuredGrid.
Write an unstructured grid to parallel files vtkXMLPUnstructuredGridWriter Write a .pvtu with 4 .vtu pieces.
Write an image file to parallel files vtkXMLPImageDataWriter Write a .pvti file with 4 .vti pieces.
Write an ExodusII file vtkExodusIIWriter Write a time varying ExodusII file.

Legacy VTK Formats

Example Name VTK Classes Demonstrated Description
GenericDataObjectReader vtkGenericDataObjectReader Read any type of legacy .vtk file.
StructuredGridReader vtkStructuredGridReader Read a structured grid (.vtk) file.
StructuredPointsReader vtkStructuredPointsReader Read a structured points (.vtk) file.

Image Formats


Example Name VTK Classes Demonstrated Description
ReadBMP vtkBMPReader Read BMP (.bmp) files.
JPEGReader vtkJPEGReader Read a JPG image.
PNGReader vtkPNGReader Read a PNG image.
ReadPNM vtkPNMReader Read PNM (.pnm) files.
ReadTIFF vtkTIFFReader Read TIFF (.tif) files.
MetaImageReader vtkMetaImageReader Read .mha files.
ImageReader2Factory vtkImageReader2Factory This class tries to find an appropriate reader. It is very convenient to use this when you don't know what kind of file to expect.


Example Name VTK Classes Demonstrated Description
JPEGWriter vtkJPEGWriter Write a JPEG (.jpg) file.
MetaImageWriter vtkMetaImageWriter Write a .mha/.mhd + .raw file.
WriteBMP vtkBMPWriter Write a BMP (.bmp) file.
WritePNG vtkPNGWriter Write a PNG (.png) file.
WritePNM vtkPNMWriter Write a PNM (.pnm) file.
WriteTIFF vtkTIFFWriter Write a TIFF (.tif) file.

Geometric Objects

Example Name VTK Classes Demonstrated Description
Cell3DDemonstration vtkHexagonalPrism vtkHexahedron vtkPentagonalPrism vtkPolyhedron vtkPyramid vtkTetra vtkVoxel vtkWedge vtkUnstructuredGrid Demonstrate the use of vtkCell3D to construct geometric objects. Sample objects are generated from the classes derived from vtkCell3D and displayed.
PolygonIntersection vtkPolygon Compute the intersection of a line segment with a polygon.
GeometricObjectsDemo A demonstration of all geometric objects that work the same way.
Arrow vtkArrowSource
Axes vtkAxesActor
Colored Lines vtkCellData vtkLine
Cone vtkConeSource
Cube vtkCubeSource
Cylinder vtkCylinderSource
Disk vtkDiskSource A circle with a hole in it.
Dodecahedron vtkPolyhedron Create a dodecahedron using vtkPolyhedron
Frustum vtkFrustumSource
Line vtkLineSource
LongLine vtkLine Manually create a polyline
Hexahedron vtkHexahedron
Oriented Arrow vtkArrowSource Orient an arrow along an arbitrary vector
Oriented Cylinder vtkCylinderSource Orient a cylinder along an arbitrary vector
Plane vtkPlaneSource
Planes vtkPlanes
PlanesIntersection vtkPlanesIntersection
PlatonicSolid vtkPlatonicSolidSource
Point vtkPoints
Polyhedron vtkPolyhedron
Polygon vtkPolygon
Pyramid vtkPyramid
PolyLine vtkPolyLine
Quad vtkQuad
Regular Polygon vtkRegularPolygonSource
Sphere vtkSphereSource
Triangle vtkTriangle
Triangle strip vtkTriangleStrip
Tetrahedron vtkTetra
Vertex vtkVertex

Parametric Objects

These examples demonstrate how to create an display one of the many vtkParametric* objects. All of the classes listed can be used in an identical fashion.

Example Name VTK Classes Demonstrated Description
ParametricObjects Create and display a parametric object. Uncomment the object that you wish to be displayed.
ParametricObjectsDemo vtkParametricBoy, vtkParametricConicSpiral, vtkParametricCrossCap, vtkParametricDini, vtkParametricEllipsoid, vtkParametricEnneper, vtkParametricFigure8Klein, vtkParametricKlein, vtkParametricMobius, vtkParametricRandomHills, vtkParametricRoman, vtkParametricSpline, vtkParametricSuperEllipsoid, vtkParametricSuperToroid, vtkParametricTorus Demonstration of of the vtkParametric* classes added by Andrew Maclean. All the objects are displayed in a 4X4 array.
ParametricObjectsDemo2 vtkParametricBohemianDome, vtkParametricBour, vtkParametricCatalanMinimal, vtkParametricHenneberg, vtkParametricKuen, vtkParametricPluckerConoid, vtkParametricPseudosphere Demonstration of additional vtkParametric* classes added by Tim Meehan. All the objects are displayed in a 4X2 array.


Interactively change the parameters for a Kuen Surface.


Interactively change the parameters for a SuperEllipsoid Surface.


Interactively change the parameters for a SuperToroid Surface.

Implicit Functions and Iso-surfaces

Example Name VTK Classes Demonstrated Description
IsoContours vtkContourFunction Visualize different isocontours using a slider.
SampleFunction vtkSampleFunction Sample and visualize an implicit function.
ExtractLargestIsosurface vtkPolyDataConnectivityFilter Extract largest isosurface.
BandedPolyDataContourFilter vtkBandedPolyDataContourFilter Create filled contours.
FilledContours vtkContourFilter Create filled contours (using vtkClipPolyData).
CutWithCutFunction vtkCutter Cut a surface with an implicit plane using vtkCutter.
CutWithScalars vtkContourFilter Cut a surface with scalars.
ImplicitSphere vtkSphere An implicit representation of a sphere.
MarchingCubes vtkMarchingCubes Create a voxelized sphere.
MarchingSquares vtkMarchingSquares Create a contour from a structured point set (image)
ContourTriangulator vtkMarchingSquares vtkContourTriangulator Create a contour from a structured point set (image) and triangulate it.

Working with 3D Data

Example Name VTK Classes Demonstrated Description
SelectionSource vtkSelectionSource, vtkExtractSelection Specify a selection.
WarpTo vtkWarpTo Bend an object.
CenterOfMass CenterOfMass Compute the center of mass of the points.
BooleanOperationPolyDataFilter BooleanOperationPolyDataFilter Perform boolean operations on two vtkPolyData objects.
DistancePolyDataFilter DistancePolyDataFilter Compute the distance function from one vtkPolyData to another.
ImplicitPolyDataDistance ImplicitPolyDataDistance Compute the distance function in a space around a vtkPolyData.
IntersectionPolyDataFilter IntersectionPolyDataFilter Compute the intersection of two vtkPolyData objects.
ShrinkPolyData vtkShrinkPolyData Move all items in a PolyData towards their centroid.
VectorFieldNonZeroExtraction vtkExtractSelectedThresholds Extract non-zero vectors from a vtkImageData.
MultiBlockMergeFilter vtkMultiBlockMergeFilter, vtkMultiBlockDataSet Combine MultiBlockDataSets.
IterateOverLines vtkCellArray Iterate through the lines of a PolyData.
AlignFrames vtkLandmarkTransform Align coordinate frames.
WarpVector vtkWarpVector
FindAllArrayNames vtkPolyData Get the names of all of the data arrays.
PolyDataGetPoint vtkPolyData Get point locations/coordinates from a vtkPolyData.
NullPoint vtkPointData Set everything in PointData at a specified index to NULL
ContoursFromPolyData vtkCutter Create contours from PolyData.
ImplicitBoolean vtkImplicitBoolean Operations include intersection and union.
ConnectivityFilter vtkConnectivityFilter Color any dataset type based on connectivity.
AppendFilter vtkAppendFilter Append different types of data,
Perlin Noise vtkPerlinNoise
Circle vtkCutter Create a circle by cutting through a sphere.
ProgrammableFilter vtkProgrammableFilter Create a custom filter without subclassing.
TransformPolyData vtkTransformPolyDataFilter Apply a Transformation to a PolyData.
CombinePolydata vtkAppendPolyData Combine/Append PolyData.
RuledSurfaceFilter vtkRuledSurfaceFilter Create a surface between lines.
CleanPolyData vtkCleanPolyData Remove coincident points.
CellPointNeighbors vtkPolyData::GetCellNeighbors Determine which cells share a single point with a specific cell.
CellEdgeNeighbors vtkPolyData::GetCellNeighbors Determine which cells share an edge with a specific cell.
PolyDataIsoLines vtkBandedPolyDataContourFilter Iso lines on the surface of a polydata
KMeansClustering vtkKMeansStatistics KMeans Clustering
PKMeansClustering vtkPKMeansStatistics Parallel KMeans Clustering.
WarpScalar vtkWarpScalar Move vertices along normals.
VertexConnectivity vtkPolyData::GetCellPoints Get a list of vertices attached (through an edge) to a vertex.
DeletePoint vtkPoints, vtkPolyData
ThinPlateSplineTransform vtkThinPlateSplineTransform
PointCellIds vtkIdFilter Generate point and cell id arrays.
Reflection vtkReflectionFilter Mirror a DataSet.
CellCenters vtkCellCenters Compute points at the center of every cell.
ExtractSelection vtkExtractSelection Extract selection points.
ExtractSelectedIds vtkExtractSelectedIds Extract selected points.
ExtractSelectionOriginalId vtkExtractSelection Extract selection and find correspondence between new and original Id.
ExtractSelectionCells vtkExtractSelection Extract selection cells.
ExtractCellsUsingPoints vtkExtractSelection, vtkSelection, vtkSelectionNode Extract points but bring cells that are still complete with them.
QuantizePolyDataPoints vtkQuantizePolyDataPoints Snap (quantize) points to a grid.
ReverseSense vtkReverseSense Flip normals.
PointsProjectedHull vtkPointsProjectedHull Convex hull of points projected onto the coordinate planes.
SCurveSpline vtkSCurveSpline Create an SCurve spline on a set of points.
KochanekSpline vtkKochanekSpline Create an Kochanek spline on a set of points.
ParametricSpline vtkCardinalSpline, vtkParametricSpline, vtkParametricFunctionSource Create a Cardinal spline on a set of points.
SelectVisiblePoints vtkSelectVisiblePoints Select visible points.
ExtractVisibleCells vtkHardwareSelector Extract and highlight visible cells.
Stripper vtkStripper Convert triangles to triangle strips.
DataSetSurfaceFilter vtkDataSetSurfaceFilter Convert vtkUnstructuredGrid to vtkPolyData.
GeometryFilter vtkGeometryFilter Convert vtkUnstructuredGrid to vtkPolyData (another way).
ImplicitModeller vtkImplicitModeller Compute the distance from an object to every point on a uniform grid.
TransformFilter vtkTransformFilter Transform a data set.
InterpolateTerrain vtkProbeFilter Here is a good explanation of what is going on.Interpolate terrain.
InterpolateMeshOnGrid vtkProbeFilter Interpolate a mesh over a grid.
PolyDataPointSampler vtkPolyDataPointSampler Sample the edges or surfaces of a polydata.
MaskPoints vtkMaskPoints Select a subset (mask) of a point set.
LinearExtrusion vtkLinearExtrusionFilter Extrude a shape.
RotationAroundLine vtkTransform, vtkTransformPolyDataFilter Rotation around a line.
ExtractOutsideSurface vtkPolyDataConnectivityFilter Extract the outer surface of a multiple surface polydata.
ContoursToSurface vtkVoxelContoursToSurfaceFilter Convert contours to a surface.
TubeFilter vtkTubeFilter Give lines a thickness (produce a cylinder around lines.
RibbonFilter vtkRibbonFilter
ConvexHull_ShrinkWrap vtkSmoothPolyDataFilter Convex hull using shrink wrapping.
ConvexHull_vtkHull vtkHull Convex hull using vtkHull.
PointInsideObject vtkSelectEnclosedPoints Check if a point is inside an object.
PointInsideObject2 vtkDelaunay3D, vtkPolyData::FindCell This uses a Delaunay triangulation to compute a volume. This gives more of an "is inside convex hull" effect than an "is inside object".
Data Bounds vtkPolyData::GetBounds Get the minimum and maximum value in each dimension. (Axis aligned bounding box)
TransformOrder vtkTransformPolyDataFilter Demonstrate how the order of applying transforms affects the result.
Outline vtkOutlineFilter Draw the bounding box of the data
TriangleArea vtkTriangle::TriangleArea Compute the area of all triangles in a polydata.
Silhouette vtkPolyDataSilhouette
ThresholdingPoints vtkThresholdPoints Thresholding Points.
ThresholdingCells vtkThreshold Thresholding Cells.
ProcrustesAlignmentFilter vtkProcrustesAlignmentFilter Align point sets.
GradientFilter vtkGradientFilter Compute the gradient of a scalar field on a data set.
PolyDataToImageData vtkPolyDataToImageStencil Generate a binarized volume from a closed surface.
PolyDataContourToImageData vtkLinearExtrusionFilter,vtkPolyDataToImageStencil Generate a binarized image from a closed contour.
ExtractPolyLinesFromPolyData vtkPolyData Extract polylines from polydata.
FitSplineToCutterOutput vtkKochanekSpline, vtkSplineFilter, vtkSpline Fit a spline to cutter output.
MergePoints vtkMergePoints Remove duplicate (merge) points.
DecimatePolyline vtkDecimatePolylineFilter Decimate polyline.
FieldData vtkFieldData Add Global Miscellaneous Data (FieldData) to a Polydata.
PolyDataExtractNormals vtkPolyDataNormals Extract Normals from a Polydata.
DetermineArrayDataTypes vtkPolyData Determine data types of arrays.
EmbedPointsIntoVolume vtkGaussianSplatter Embed points into a volume.
CopyAllArrays vtkPolyData Copy all arrays from one vtkPolyData to another.
Colored Points vtkUnsignedCharArray Add three points to a polydata and associate a color with each of them.
TriangleColoredPoints vtkUnsignedCharArray Set the color of each point of a triangle. You will be able to interpolate the colors across the triangle.
TriangleSolidColor vtkUnsignedCharArray Create a solid colored triangle.
ColorCells vtkLookupTable Color individual cells of a polydata with scalar index.
ColorCellsWithRGB vtkCellData Color individual cells of a polydata with rgb colors.
PolyDataCellNormals vtkCellData Add/Get Normals to/from cells in a Polydata.
PolyDataPointNormals vtkPointData Add/Get Normals to/from points in a Polydata.
MiscPointData vtkPointData, vtkFloatArray Add Miscellaneous Data to Points in a Polydata.
GetMiscPointData vtkDoubleArray Get Miscellaneous Data from Points in a Polydata.
MiscCellData vtkCellData Add Miscellaneous Data to Cells in a Polydata.
GetMiscCellData vtkCellData Get Miscellaneous Data from Cells in a Polydata.
ExternalContour vtkWindowToImageFilter, vtkContourFilter Get the External Contour from Polydata.
TransformPipeline vtkTransform Combining the transformation, in order to manipulate a group of vtkActor. Shown in the example robot arm motion.
WarpSurface vtkWarpVector Warp a surface along its normal.
ProgrammableSource vtkProgrammableSource Create points using a programmable source. Generates points for a strange attractor.
ProjectSphere vtkProjectSphereFilter Unroll a sphere or spherical-like model.

Data Type Conversions

Example Name VTK Classes Demonstrated Description
PolyDataToUnstructuredGrid vtkAppendFilter Convert a vtkPolyData to a vtkUnstructuredGrid.

Point cloud operations

Example Name VTK Classes Demonstrated Description
ExtractSurface vtkExtractSurface,vtkPCANormalEstimation,vtkSignedDistance Create a surface from Unorganized Points using Point filters.
ExtractSurfaceDemo vtkExtractSurface,vtkPCANormalEstimation,vtkSignedDistance Create a surface from Unorganized Points using Point filters (DEMO).
PointSource vtkPointSource Generate a random point cloud.
DownsamplePointCloud vtkCleanPolyData Downsample a point cloud. Remove points so that there are no points within a tolerance of any point.
DensifyPoints vtkDensifyPointCloudFilter Add points to a point cloud.
ExtractCluster vtkEuclideanClusterExtraction From a set of randomly distributed spheres, extract connected clusters.
NormalEstimation vtkPCANormalEstimation Estimate the normals of a random points that lie on a sphere.
FitImplicitFunction vtkFitImplicitFunction Extract points within a distance to an implicit function.
SignedDistance vtkSignedDistance Compute signed distance to a point cloud.
UnsignedDistance vtkUnsignedDistance Compute unsigned distance to a point cloud.
PointOccupancy vtkPointOccupancy Show which voxels contain points.
RadiusOutlierRemoval vtkRadiusOutlierRemoval Remove outliers.
MaskPointsFilter vtkMaskPointsFilter Extract points within an image mask.
ExtractPointsDemo vtkExtractPoints Extract points inside an implicit function.

Working with Meshes

Example Name VTK Classes Demonstrated Description
AddCell vtkPolyData Add a cell to an existing mesh.
MatrixMathFilter vtkMatrixMathFilter Compute various quantities on cell and points in a mesh.
WeightedTransformFilter vtkWeightedTransformFilter
GreedyTerrainDecimation vtkGreedyTerrainDecimation Create a mesh from an ImageData
LargestRegion vtkPolyDataConnectivityFilter Extract the largest connected region in a polydata.
SpecifiedRegion vtkPolyDataConnectivityFilter Extract a specific (specified) connected region in a polydata.
ColorDisconnectedRegions vtkPolyDataConnectivityFilter Color each disconnected region of a vtkPolyData a different color.
Curvatures vtkCurvatures Compute Gaussian, Mean, Min, and Max Curvatures.
MeshQuality vtkMeshQuality
HighlightBadCells vtkMeshQuality
PolygonalSurfaceContourLineInterpolator vtkPolygonalSurfaceContourLineInterpolator Interactively find the shortest path between two points on a mesh.
DijkstraGraphGeodesicPath vtkDijkstraGraphGeodesicPath Find the shortest path between two points on a mesh.
SelectPolyData vtkSelectPolyData Select a region of a mesh.
SmoothPolyDataFilter vtkSmoothPolyDataFilter Laplacian smoothing.
ClosedSurface vtkFeatureEdges Check if a surface is closed.
Decimation vtkDecimatePro Reduce the number of triangles in a mesh.
DeformPointSet vtkDeformPointSet Deform a point set with a control polyhedra.
QuadricDecimation vtkQuadricDecimation Reduce the number of triangles in a mesh.
QuadricClustering vtkQuadricClustering Reduce the number of triangles in a mesh.
Subdivision vtkButterflySubdivisionFilter, vtkLoopSubdivisionFilter, vtkLinearSubdivisionFilter Increase the number of triangles in a mesh.
BoundaryEdges vtkFeatureEdges Find the edges that are used by only one face.
FillHoles vtkFillHolesFilter Close holes in a mesh.
WindowedSincPolyDataFilter vtkWindowedSincPolyDataFilter Smooth a mesh (windowed sinc filter).
ColoredElevationMap vtkLookupTable Color a mesh by height.
ElevationFilter vtkElevationFilter Color a mesh by height.
SimpleElevationFilter vtkSimpleElevationFilter Color a mesh by dotting a vector from the origin to each point with a specified vector.
Triangluate vtkTriangleFilter Convert all polygons in a mesh to triangles.
ExtractEdges vtkExtractEdges
CellEdges vtkCell Get edges of cells.
OBBDicer vtkOBBDicer Breakup a mesh into pieces.
SplitPolyData vtkOBBDicer Breakup a mesh into pieces and save the pieces into files


Example Name VTK Classes Demonstrated Description
GenericClip vtkGenericClip,vtkBridgeDataSet, vtkGenericDataSet
SolidClip vtkClipPolyData Create a "solid" clip.
CapClip vtkClipPolyData Cap a clipped polydata with a polygon.
ClipClosedSurface vtkClipClosedSurface Clip a surface with multiple planes.
ImplicitDataSetClipping vtkImplicitDataSet Clip using an implicit data set.
ClipDataSetWithPolyData vtkClipDataSet, vtkImplicitPolyDataDistance, vtkRectilinearGrid Clip a vtkRectilinearGrid with arbitrary polydata. In this example, use a vtkConeSource to generate polydata to slice the grid, resulting in an unstructured grid. Contrast this with the next example.
TableBasedClipDataSetWithPolyData vtkTableBasedClipDataSet, vtkImplicitPolyDataDistance, vtkRectilinearGrid Clip a vtkRectilinearGrid with arbitrary polydata. In this example, use a vtkConeSource to generate polydata to slice the grid, resulting in an unstructured grid. Contrast this with the previous example.
BoxClipUnstructuredGrid vtkBoxClipDataSet, vtkUnstructuredGrid Clip a vtkUnstructuredGrid with a box. The results are unstructured grids with tetrahedra.
BoxClipStructuredPoints vtkBoxClipDataSet, vtkStructuredPoints Clip vtkStructuredPoints with a box. The results are unstructured grids with tetrahedra.

Working with Structured 3D Data

This section includes vtkImageData, vtkStructuredGrid, and vtkRectilinearGrid.

"ImageData" is not the traditional "flat, 2D image" you are used to. It is a special VTK data structure in the collection of 3D data structures provided by VTK. Here is an overview of these data structures: [1]. Image data can represent at typical 2D image, but also, a 3D volume.


Example Name VTK Classes Demonstrated Description
GetCellCenter vtkImageData Get the coordinates of the center of a cell.
CellIdFromGridCoordinates vtkStructuredData Get the id of a cell from its grid coordinates.
IterateImageData vtkImageData Iterating over a vtkImageData.
ImageNormalize vtkImageNormalize Normalize an image.
ExtractVOI vtkExtractVOI Extract a volume of interest (subvolume).
ImageWeightedSum vtkImageWeightedSum Add two or more images.
ImageReslice vtkImageReslice Resize a vtkImageData.
ImageTranslateExtent vtkImageTranslateExtent Change the extent of a vtkImageData.
IntersectLine vtkImageData Intersect a line with all cells of a vtkImageData.
ImageIterator vtkImageIterator


Example Name VTK Classes Demonstrated Description
ImageDataGeometryFilter vtkImageDataGeometryFilter Convert a vtkImageData to a vtkPolyData
ImageDataToPointSet vtkImageDataToPointSet Convert a vtkImageData to a vtkStructuredGrid.


Example Name VTK Classes Demonstrated Description
StructuredGrid vtkStructuredGrid Structured Grid.
VisualizeStructuredGrid vtkStructuredGridGeometryFilter Visualize the points of a structured grid.
OutlineStructuredGrid vtkStructuredGridOutlineFilter Visualize the outline of a structured grid.
VisualizeStructuredGridCells vtkShrinkFilter Visualize the cells of a structured grid.
BlankPoint vtkStructuredGrid Blank a point of a vtkStructuredGrid.


Example Name VTK Classes Demonstrated Description
StructuredPointsToUnstructuredGrid vtkStructuredPoints, vtkUnstructuredGrid Convert a vtkStructuredPoints to a vtkUnstructuredGrid.


Example Name VTK Classes Demonstrated Description
RectilinearGrid vtkRectilinearGrid Rectilinear grid
VisualizeRectilinearGridCells vtkRectilinearGrid, vtkShrinkFilter Visualize the cells of a rectilinear grid
RectilinearGridToTetrahedra vtkRectilinearGridToTetrahedra Convert a vtkRectilinearGrid to a vtkUnstructuredGrid mesh


Example Name VTK Classes Demonstrated Description
IterativeClosestPointsTransform vtkIterativeClosestPointTransform Iterative Closest Points (ICP) Transform.
LandmarkTransform vtkLandmarkTransform Landmark Transform.


Example Name VTK Classes Demonstrated Description
MedicalDemo1 vtkMarchingCubes Create a skin surface from volume data
MedicalDemo2 vtkMarchingCubes Create a skin and bone surface from volume data
MedicalDemo3 vtkMarchingCubes Create skin, bone and slices from volume data
MedicalDemo4 vtkFixedPointVolumeRayCastMapper Create a volume rendering
TissueLens vtkMarchingCubes vtkClipDataSet vtkProbeFilter Cut a volume with a sphere

Surface reconstruction

Example Name VTK Classes Demonstrated Description
GaussianSplat vtkGaussianSplatter Create a surface from Unorganized Points (Gaussian Splat).
TriangulateTerrainMap vtkDelaunay2D Generate heights (z values) on a 10x10 grid (a terrain map) and then triangulate the points to form a surface.
GenerateCubesFromLabels vtkMetaImageReader, vtkMaskFields Create cubes from labeled volume data.
GenerateModelsFromLabels vtkDiscreteMarchingCubes Create models from labeled volume data (Discrete MarchingCubes).
Delaunay3D vtkDelaunay3D Create a solid mesh from Unorganized Points (Delaunay3D).
SurfaceFromUnorganizedPointsWithPostProc vtkSurfaceReconstructionFilter Create a surface from Unorganized Points (with post processing).
SurfaceFromUnorganizedPoints vtkSurfaceReconstructionFilter Create a surface from Unorganized Points.
ExtractSurface vtkExtractSurface,vtkPCANormalEstimation,vtkSignedDistance Create a surface from Unorganized Points using Point filters.
ExtractSurfaceDemo vtkExtractSurface,vtkPCANormalEstimation,vtkSignedDistance Create a surface from Unorganized Points using Point filters (DEMO).


Example Name VTK Classes Demonstrated Description
FullScreen vtkRenderWindow Maximize/full screen a vtkRenderWindow.
ShallowCopy Shallow copy a VTK object.
DeepCopy Deep copy a VTK object.
ZBuffer vtkRenderer zbuffer.
ShareCamera vtkRenderer, vtkCamera Share a camera between multiple renderers.
FileOutputWindow vtkFileOutputWindow Write errors to a log file instead of the screen.
VisualDebugging Update the screen from inside an algorithm.
FrameRate Get the frame rate of the rendering.
GetDataRoot vtkTesting Find the path of VTK_DATA_ROOT.
PointInPolygon vtkPolygon Point inside polygon test.
BoundingBox vtkBoundingBox Bounding Box construction.
BoundingBoxIntersection vtkBoundingBox Box intersection and Inside tests.
FilterProgress Monitor a filters progress.
MultipleViewports vtkRenderer::SetViewPort Multiple Viewports.
SideBySideViewports vtkRenderer::SetViewPort Side by side viewports.
MultipleRenderWindows vtkRenderWindow Multiple Render Windows
Casting vtkObject::SafeDownCast Casting VTK objects.
BrownianPoints vtkBrownianPoints Produce a random vector at each point in a dataset.
vtkVector vtkVector Mathematical vector class.
vtkPCAStatistics vtkPCAStatistics Compute Principal Component Analysis (PCA) values.
PCADemo vtkPCAStatistics Project 2D points onto the best 1D subspace (PCA Demo).
PassThrought vtkPassThrough Pass input along to outpu.
CardinalSpline vtkCardinalSpline Cardinal spline Interpolation.
ShepardMethod vtkShepardMethod Shepard method interpolation.
TimerLog vtkTimerLog Timer log.
TimeStamp vtkTimeStamp Time stamp.
CommandSubclass vtkCommand Instead of using a callback function, it is more powerful to subclass vtkCommand.
PiecewiseFunction vtkPiecewiseFunction Interpolation using a piecewise function.
Variant vtkVariant Convert between data types.
Coordinate vtkCoordinate Coordinate system conversions.
CheckVTKVersion vtkVersion Check VTK Version.
VersionMacros Macro/#define's Check VTK Version.
LUTUtilities vtkLookupTable vtkColorSeries A utility class for vtkLookupTable allowing you to output the table contents or to compare tables.
ColorLookupTable vtkLookupTable Color Lookup Table.
ColorTransferFunction vtkColorTransferFunction Color Transfer Function.
DiscretizableColorTransferFunction vtkDiscretizableColorTransferFunction Discretizable Color Transfer Function.
Delaunay2D vtkDelaunay2D Perform a 2D Delaunay triangulation on a point set.
ConstrainedDelaunay2D vtkDelaunay2D Perform a 2D Delaunay triangulation on a point set respecting a specified boundary.
DetermineVariableType GetClassName() Determine the type of a VTK variable.
DetermineActorType vtkActor, vtkActorCollection Determine the type of an actor.
Screenshot vtkWindowToImageFilter
FilenameFunctions vtkDirectory, vtksys/SystemTools Do things like get the file extension, strip the file extension, etc.
Timer vtkRenderWindowInteractor::CreateRepeatingTimer
OffScreenRendering vtkImagingFactory, vtkGraphicsFactory Off Screen Rendering.
FunctionParser vtkFunctionParser String function parser.


Example Name VTK Classes Demonstrated Description
SortDataArray vtkSortDataArray Reorder array values based on an ordering (key) array.
ArrayCalculator vtkArrayCalculator Perform in-place operations on arrays.
ArrayWriter vtkArrayWriter Write a DenseArray or SparseArray to a file.
ArrayLookup vtkDataArray Find the location of a value in a vtkDataArray.
ConcatenateArray vtkConcatenateArray Concatenate two arrays.
ArrayToTable vtkArrayToTable Convert a vtkDenseArray to a vtkTable.
ConstructTable vtkTable A table is a 2D array of any type of elements. They do not all have to be the same type. This is achieved using vtkVariant.
KnownLengthArray vtkFloatArray Known Length Array.
UnknownLengthArray vtkFloatArray Unknown Length Array.
KnownLengthArrayOfVectors vtkFloatArray Array of Vectors (Known Length).
UnknownLengthArrayOfVectors vtkFloatArray Array of Vectors (Unknown Length).
DenseArrayRange vtkDenseArray, vtkArrayRange Get the bounds of a vtkDenseArray.
ArrayRange vtkFloatArray::GetRange Get the bounds (min,max) of a vtk array.
2DArray vtkDenseArray 2D Array.
3DArray vtkDenseArray 3D Array.
SparseArray vtkSparseArray Sparse Array.
CustomDenseArray vtkDenseArray Custom type Dense (2D) Array.
ExtractArrayComponent vtkArrayCalculator Extract a component of an array.


Example Name VTK Classes Demonstrated Description
ObserveError vtkCommand Catch errors and warnings.
CameraModifiedEvent vtkCameraWindow Catch the camera modified event.
WindowModifiedEvent vtkRenderWindow Catch the window modified event.

CMake Techniques

Example Name VTK Classes Demonstrated Description
Check if a specific module is present
Check VTK Version in CMake

Math Operations

Example Name VTK Classes Demonstrated Description
LUFactorization vtkMath LU Factorization.
NormalizeVector vtkMath Normalize a vector.
VectorDot vtkVectorDot
PowerWeighting vtkPowerWeighting Raise all elements in an array to a power.
LeastSquares vtkMath::SolveLeastSquares Least Squares.
HomogeneousLeastSquares vtkMath::SolveHomogeneousLeastSquares Homogeneous Least Squares.
EigenSymmetric vtkMath::Jacobi Compute eigenvalues and eigenvectors of a symmetric matrix.
MatrixTranspose vtkMatrix3x3 Matrix transpose.
MatrixInverse vtkMatrix3x3 Matrix inverse.
PerpendicularVector vtkMath::Perpendiculars Get a vector perpendicular to another vector.
VectorNorm vtkVectorNorm Get the lengths of an array of vectors.
Interpolate1D vtkTupleInterpolator vtkCardinalSpline vtkKochanekSpline A simple example demonstrating how functions defined by sparsely distributed supporting points can be interpolated at arbitrary positions.


Example Name VTK Classes Demonstrated Description
AdjacencyMatrixToEdgeTable vtkAdjacencyMatrixToEdgeTable Convert an adjacency matrix to an edge table.
ShortestPath vtkDijkstraGraphGeodesicPath Find the shortest path on a graph.
ColorVertexLabels vtkGraphLayoutView, vtkRenderedGraphRepresentation Set the color of vertex labels.
VertexSize vtkGraphLayoutView, vtkRenderedGraphRepresentation Set the size of vertices.
ScaleVertices vtkGraphLayoutView, vtkRenderedGraphRepresentation Size/scale vertices based on a data array.
SelectedVerticesAndEdges vtkAnnotationLink Get a list of selected vertices and edges.
SelectedVerticesAndEdgesObserver vtkAnnotationLink Get a list of selected vertices and edges using an observer of AnnotationChangedEvent.
GraphPoints vtkGraph::SetPoints, vtkPassThroughLayoutStrategy Manually set coordinates of vertices in a graph.
MutableGraphHelper vtkMutableGraphHelper Create either a vtkMutableDirectedGraph or vtkMutableUndirectedGraph.
SideBySideGraphs vtkGraphLayoutView Display two graphs side by side.
AdjacentVertexIterator vtkAdjacentVertexIterator Get all vertices connected to a specified vertex.
EdgeWeights vtkGraph::GetEdgeData::AddArray Edge weights.
IterateEdges vtkEdgeListIterator Iterate over edges of a graph.
InEdgeIterator vtkInEdgeIterator Iterate over edges incoming to a vertex.
OutEdgeIterator vtkOutEdgeIterator Iterate over edges outgoing from a vertex.
BFSTree vtkBoostBreadthFirstSearchTree Breadth first search tree. Can also be used to convert a graph to a tree.
BreadthFirstDistance vtkBoostBreadthFirstSearch Distance from origin.
ColorVerticesLookupTable vtkGraphLayoutView Color vertices.
ColorEdges vtkGraphLayoutView Color edges.
ConstructGraph vtkMutableUndirectedGraph Construct a graph.
ConstructTree vtkTree, vtkMutableDirectedGraph Construct a tree.
MinimumSpanningTree vtkBoostPrimMinimumSpanningTree Minimum spanning tree of a graph.
DepthFirstSearchIterator vtkTreeDFSIterator Depth First Search iterator.
BreadthFirstSearchIterator vtkTreeBFSIterator Breadth First Search iterator.
VisualizeGraph vtkGraphLayoutView, vtkGraphLayoutStrategy, vtkSimple2DLayoutStrategy Visualize a graph.
NOVCAGraph vtkUnstructuredGrid, vtkXMLUnstructuredGridWriter, vtkPolyLine Create a graph & visualize it in ParaView/VisIt.
LabelVerticesAndEdges vtkGraphLayoutView::SetEdgeLabelArrayName, vtkGraphLayoutView::SetVertexLabelArrayName Label vertices and edges.
ConnectedComponents vtkBoostConnectedComponents Find connected components of a graph.
GraphToPolyData vtkGraphToPolyData Convert a graph to a PolyData.
VisualizeDirectedGraph vtkGlyphSource2D Visualize a directed graph.
RandomGraphSource vtkRandomGraphSource Create a random graph.
DFSAnimation vtkTreeDFSIterator Depth First Search Animation.
RemoveIsolatedVertices vtkRemoveIsolatedVertices Remove vertices of degree 0 from a vtkGraph.

Graph Conversions

Example Name VTK Classes Demonstrated Description
MutableDirectedGraphToDirectedGraph vtkMutableDirectedGraph, vtkDirectedGraph vtkMutableDirectedGraph to vtkDirectedGraph.
DirectedGraphToMutableDirectedGraph vtkMutableDirectedGraph, vtkDirectedGraph vtkDirectedGraph to vtkMutableDirectedGraph.
TreeToMutableDirectedGraph vtkMutableDirectedGraph, vtkTree vtkTree to vtkMutableDirectedGraph

Graph Conversions That Don't Work

Example Name VTK Classes Demonstrated Description
vtkMutableDirectedGraph to vtkMutableUndirectedGraph vtkMutableDirectedGraph, vtkMutableUndirectedGraph
vtkMutableUndirectedGraph to vtkMutableDirectedGraph vtkMutableDirectedGraph, vtkMutableUndirectedGraph
vtkTree to vtkMutableUndirectedGraph vtkTree, vtkMutableUndirectedGraph

Data Structures

Example Name VTK Classes Demonstrated Description
AttachAttributes vtkInformation Attach attributes to a VTK array
Radius vtkPointLocator Find all points within a radius of a specified point.
CellLocatorVisualization vtkCellLocator Visualization of the tree of a vtkCellLocator.
PointLocatorVisualization vtkPointLocator Visualization of the tree of a vtkPointLocator.
PointLocator vtkPointLocator Efficient 3D point query.
CellLocator vtkCellLocator Project a point onto a mesh. Closest point on a mesh.Efficient 3D cell query.
CellTreeLocator vtkCellTreeLocator Points inside an object using vtkCellTreeLocator.

Timing Demonstrations

Example Name VTK Classes Demonstrated Description
OctreeTimingDemo vtkOctreePointLocator Plot the runtime vs MaxPointsPerRegionOctree timing demo.
KDTreeTimingDemo vtkKdTreePointLocator Plot the runtime vs MaxLevel (doesn't seem correct)
OBBTreeTimingDemo vtkOBBTree Plot the runtime vs MaxLevel
ModifiedBSPTreeTimingDemo vtkModifiedBSPTree Plot the runtime vs MaxLevel


Example Name VTK Classes Demonstrated Description
KdTree vtkKdTree
BuildLocatorFromKClosestPoints vtkKdTree
KDTreeAccessPoints vtkKdTree Access the points of a KDTree.
KdTreePointLocatorClosestPoint vtkKdTreePointLocator Find the closest point to a query point.
ClosestNPoints vtkKdTreePointLocator Find the closest N points to a query point.
VisualizeKDTree vtkKdTreePointLocator Visualize levels of the tree.
KDTreeFindPointsWithinRadius vtkKdTreePointLocator Find points within a specified radius of a query point.
DataStructureComparison vtkKdTree, vtkOBBTree, vtkOctreePointLocator, vtkModifiedBSPTree Illustrates, side by side, the differences between several spatial data structures

Oriented Bounding Box (OBB) Tree

Example Name VTK Classes Demonstrated Description
IntersectWithLine vtkOBBTree Intersect a line with a vtkOBBTree.
OBBTreeExtractCells vtkOBBTree Intersect a line with an OBB Tree and display all intersected cells.
VisualizeOBBTree vtkOBBTree Visualize levels of the tree.


Example Name VTK Classes Demonstrated Description
BuildTree vtkOctreePointLocator Create an octree.
ClosestPoint vtkOctreePointLocator Find the closest point to a query point.
KClosestPoints vtkOctreePointLocator Find the K closest points to a query point.
FindPointsWithinRadius vtkOctreePointLocator Find the points within a sphere of specified radius to a query point.
OctreeVisualize vtkOctreePointLocator Visualize levels of the tree.
IncrementalOctreePointLocator vtkIncrementalOctreePointLocator Insert points into an octree without rebuilding it.

Modified BSP Tree

Example Name VTK Classes Demonstrated Description
ModifiedBSPTreeIntersectWithLine vtkModifiedBSPTree Intersect a line with a modified BSP Tree.
ModifiedBSPTreeExtractCells vtkModifiedBSPTree Intersect a line with a modified BSP Tree and display all intersected cells.
VisualizeModifiedBSPTree vtkModifiedBSPTree Visualize levels of the tree.

VTK Concepts

Example Name VTK Classes Demonstrated Description
Scalars Attach a scalar value to each point (PointData) or cell (CellData) in a data set.


Example Name VTK Classes Demonstrated Description
Shadows vtkShadowMapPass Create shadows.
Light vtkLight Add a directional light to a scene.
LightActor vtkLightActor Display the location and direction of a light.


See this tutorial for a brief explanation of the VTK terminology of mappers, actors, etc.

Example Name VTK Classes Demonstrated Description
AssignColorsFromLUT vtkNamedColors, vtkPlaneSource, vtkLookupTable, vtkColorTransferFunction Demonstrates how to assign colors to cells in a vtkPolyData structure using lookup tables.
ElevationBandsWithGlyphs vtkBandedPolyDataContourFilter, vtkLookupTable, vtkColorSeries, vtkGlyph3D Demonstrates the coloring of a surface by partitioning the elevation into bands and using arrows to display the normals on the surface.
CurvatureBandsWithGlyphs vtkCurvatures, vtkBandedPolyDataContourFilter, vtkLookupTable, vtkColorSeries, vtkGlyph3D Demonstrates the coloring of a surface by partitioning the gaussian curvature of a surface into bands and using arrows to display the normals on the surface.
LayeredRenderers vtkRenderer Layered renderers.
ScalarVisibility vtkDataSetMapper Switch between coloring the actor and coloring the data.
ImageMapper vtkImageMapper Display an image in 2D.
BackgroundTexture vtkRenderer, vtkTexture Use a texture for the background of a vtkRenderer.
VectorField vtkGlyph3D Visualize a vector field.
ImageOrientation vtkInteractorStyleImage Orientation of the view of an image.
CaptionActor2D CaptionActor2D Draw a caption/bubble pointing to a particular point.
ImageOrder vtkRenderer Determine the display order of a stack of images.
RenderPassExistingContext vtkRenderPass,vtkVolumetricPass Render into an existing OpenGL Context.
ImageTransparency vtkImageData Set transparency of image pixels.
OrientedGlyphs vtkGlyph3D Create oriented glyphs from vector data.
HedgeHog vtkHedgeHog, vtkStructuredGrid Create oriented lines (hedgehogs) from vector data.
LineWidth vtkActor, vtkProperty Change the width/thickness of lines in an actor.
CursorShape vtkRenderWindow Change the shape of the cursor.
SceneBounds vtkRenderer Get the bounds of the whole scene.
FastSplatter vtkFastSplatter Convolve a splat image with every point in an input image.
TubesWithVaryingRadiusAndColors vtkTubeFilter Create tubes with varying radius and colors.
TubesFromSplines vtkTubeFilter, vtkParametricFunctionSource vtkTupleInterpolator Create tubes from interpolated points and scalars.
Glyph2D vtkGlyph2D
Glyph3D vtkGlyph3D
VertexGlyphFilter vtkVertexGlyphFilter Add a vertex to each point.
Cutter vtkCutter
QuadraticSurface vtkQuadric Display a quadratic surface.
BackfaceCulling vtkActor::GetProperty::BackfaceCullingOn Backface culling.
BackgroundColor vtkRenderer::SetBackground Background color.
BackgroundGradient vtkRenderer::GradientBackgroundOn, vtkRenderer::Setbackground2 Background gradient.
CameraActor vtkCameraActor Visualize a camera (frustum) in a scene.
ClipArt vtkTextureMapToPlane Generate 3D clip art from an image.
CloseWindow vtkRenderWindowInteractor::TerminateApp, vtkRenderWindow::Finalize Close a render window.
ColorAnActor vtkActor::GetProperty::SetColor Color an Actor.
ColorActorEdges vtkActor::GetProperty::SetEdgeColor Color the edges of an Actor.
ColorGlyphs vtkGlyph3D vtkGlyph3D::SetColorModeToColorByScalar Color glyphs.
CornerAnnotation vtkCornerAnnotation Write text in the corners of a window.
CorrectlyRenderingTranslucentGeometry vtkDepthSortPolyData Correctly Rendering Translucent Geometry.
CubeAxesActor vtkCubeAxesActor Display three orthogonal axes with labels.
CubeAxesActor2D vtkCubeAxesActor2D This example uses the vtkCubeAxesActor2D to show your scene with axes to indicate the spatial extent of your data.
Cursor3D vtkCursor3D
Arbitrary3DCursor vtkPointWidget Track a 3D cursor.
DisplayCoordinateAxes vtkOrientationMarkerWidget Display coordinate axes.
DisplayText vtkTextActor, vtkTextProperty Display Text.
RenderView vtkRenderView A little bit easier rendering.
FlatShading vtkActor::GetProperty::SetInterpolationToFlat
Follower vtkFollower Draw text that stays right side up.
Hide an actor vtkPropCollection, vtkProp::VisibilityOff visible
HideAllActors vtkRenderer::RemoveAllViewProps Hide all actors.
LODProp3D vtkLODProp3D Level of detail rendering.
LabelContours vtkLabeledDataMapper Label Contours.
LabelMesh vtkLabeledDataMapper Label Mesh.
LabelPlacementMapper vtkPointSetToLabelHierarchy, vtkLabelPlacementMapper Display a non-overlapping text label at each point.
LabeledDataMapper vtkLabeledDataMapper Display the point ID at each point.
Legend vtkLegendBoxActor
LegendScaleActor vtkLegendScaleActor Display the scale of a scene.
MovableAxes vtkFollower, vtkAxesActor, vtkAssembly Movable axes.
MoveActor vtkInteractorStyleTrackballActor Moving an Actor.
MoveCamera vtkInteractorStyleTrackballCamera Moving the Camera.
MultipleActors vtkActor Multiple Actors.
NamedColors vtkNamedColors Demonstrates how to use the vtkNamedColor class.
NamedColorPatches vtkNamedColors Creates a HTML file called VTKNamedColorPatches.html showing the available colors in vtkNamedColors.
NoShading vtkActor::GetProperty::SetAmbient, vtkActor::GetProperty::SetDiffuse, vtkActor::GetProperty::SetSpecular
Opacity vtkActor::GetProperty::SetOpacity Transparency, transparent.
PointSize vtkActor::GetProperty::SetPointSize
PolyDataDepthSorting vtkDepthSortPolyData Poly Data Depth Sorting.
QuadricLODActor vtkQuadricLODActor Level of detail adjustment.
RenderLargeImage vtkRenderLargeImage Render a large image, larger than a window.
RotateActor vtkActor::GetMatrix Rotate an Actor.
ScalarBarActor vtkScalarBarActor Display a color bar.
ScaleGlyphs vtkGlyph3D vtkGlyph3D::SetScaleModeToScaleByScalar Scale glyphs.
SelectWindowRegion vtkInteractorStyleRubberBand2D Select a region of a window.
StreamLines vtkStreamLine Stream Lines.
TextSource vtkTextSource Display text.
TextureMapImageData vtkImageCanvasSource2D Texture map an ImageData.
TextureMapPlane vtkTextureMapToPlane Texture map a plane.
TextureMapQuad vtkPolygon, vtkPolyData::GetPointData::SetTCoords Texture map a quad.
TransformActor vtkActor::SetUserTransform Transform an Actor.
TransformActorCollection vtkActorCollection Transform an actor collection.
VectorOfActors vtkActor Multiple Actors in a Vector.
VectorText vtkVectorText Display high resolution text.
Visualize2DPoints vtkPolyDataMapper2D, vtkProperty2D Visualize a 2D Set of Points.
VisualizeImageData vtkDataSetMapper Visualize the points of an ImageData.
VisualizeVTP vtkXMLPolyDataReader, vtkPolyDataMapper Visualize a VTP File.
WindowSize vtkRenderWindow:SetSize Change the size of a window.
WindowTitle vtkRenderWindow::SetWindowName Change the title of a window.
Wireframe vtkActor::GetProperty::SetRepresentationToWireframe
Camera vtkCamera Positioning and aiming the camera.
DisplayQuadraticSurfaces vtkQuadric, vtkSampleFunction, vtkContourFilter Display Quadratic Surfaces.
Glyph3DMapper vtkGlyph3DMapper
DistanceToCamera vtkDistanceToCamera
ProgrammableGlyphFilter vtkProgrammableGlyphFilter Generate a custom glyph at each point.
CurvedReformation vtkProbeFilter Sample a volume with a curved surface. In medical imaging, this is often called curved multi planar reformation.
IsosurfaceSampling vtkProbeFilter Demonstrates how to create point data on an isosurface.
ReverseAccess vtkActor Demonstrates how to access the source (e.g. vtkSphereSource) of an actor reversely.
RandomProbe vtkProbeFilter Demonstrates how to probe a dataset with random points and select points inside the data set.
TensorGlyph vtkTensorGlyph Draw a rotated/scaled glyph at each point.
KochSnowflake vtkPolyData, vtkPolyLine, vtkTriangle, vtkLookupTable, Use recursion to represent a Koch snowflake fractal.
FindCellIntersections vtkCellLocator Find the intersection of a line and the cells in an unstructured dataset
BillboardTextActor3D vtkBillboardTextActor3D Label points with billboards.

Volume Rendering

Example Name VTK Classes Demonstrated Description
HAVS vtkHAVSVolumeMapper
SmartVolumeMapper vtkSmartVolumeMapper Smart volume mapper.
MinIntensityRendering vtkFixedPointVolumeRayCastMapper Min intensity rendering.
itkVtkImageConvert Conversion maintaining DICOM orientation and positionITK->VTK conversion.

User Interaction

Example Name VTK Classes Demonstrated Description
Game vtkInteractorStyleTrackballActor Move a cube into a sphere.
UserEvent Simple observer. Create, invoke, and handle a custom event.
ObserverMemberFunction Set observers to be class member functions.
MoveAVertex vtkPointPicker Click and drag a vertex of a vtkPolyData.
MoveAVertexUnstructuredGrid vtkPointPicker Click and drag a vertex of a vtkUnstructuredGrid.
ClientData vtkCommand Give an observer access to an object (via ClientData).
CallData vtkCommand Pass an observer a value (via CallData).
MoveAGlyph vtkGlyph3D Drag a glyph around.
Picking vtkPropPicker Get the world coordinate of the mouse click (if you clicked an actor)
PickableOff vtkActor::PickableOff Disallow interaction with a specific actor.
Assembly vtkAssembly Combine/group actors into an assembly.
DoubleClick vtkInteractorStyleTrackballCamera Catch a double click.
ImageClip vtkImageClip Demonstrates how to interactively select and display a region of an image.
ImageRegion vtkCommand Select a region of an image.
InteractorStyleTerrain vtkInteractorStyleTerrain Terrain mode.
KeypressEvents vtkInteractorStyleTrackballCamera Handle keypress events.
KeypressObserver vtkCallbackCommand This uses a callback function rather than a derived interactor class. Handle keypress events (lightweight).
InteractorStyleUser vtkInteractorStyleUser Create a completely custom interactor style (no default functionality is provided)
MouseEvents vtkInteractorStyleTrackballCamera Subclass the interactor style. Handle mouse events.
MouseEventsObserver vtkCallbackCommand Use an observer. Handle mouse events (light weight).
PointPicker vtkPointPicker Get the coordinates of the closest point in the data set to the mouse click.
RubberBand2DObserver vtkInteractorStyleRubberBand2D RubberBand2D Observer.
RubberBand2D vtkInteractorStyleRubberBand2D
RubberBand3D vtkInteractorStyleRubberBand3D
RubberBandPick vtkInteractorStyleRubberBandPick
RubberBandZoom vtkInteractorStyleRubberBandZoom
SelectAnActor vtkPropPicker Select an actor.
ShiftAndControl vtkRenderWindowInteractor::GetControlKey() Hold/holding down a key. Check if shift or control is being held.
StyleSwitch vtkInteractorStyleSwitch Choose between multiple interaction modes.
TrackballActor vtkInteractorStyleTrackballActor Trackball actor mode.
TrackballCamera vtkInteractorStyleTrackballCamera Trackball camera mode.
WorldPointPicker vtkWorldPointPicker Get world coordinates of mouse click.
CellPicking vtkCellPicker Cell Picking.
AreaPicking vtkAreaPicker Area Picking.
HighlightSelectedPoints vtkExtractGeometry Highlight Selected Points.
HighlightSelection vtkExtractPolyDataGeometry Highlight selection.
HighlightPickedActor vtkPropPicker Highlight a picked actor.

Working with Images

Example Name VTK Classes Demonstrated Description
ImageExport vtkImageExport Export an image to a C array.
ImageImport vtkImageImport Import an image from a C array.
ImageMedian3D vtkImageMedian3D Median filter a 3d or 2d image.
ImageRFFT vtkImageRFFT Inverse FFT.
ImageIdealHighPass vtkImageIdealHighPass High pass filter an image.
ImageIslandRemoval2D vtkImageIslandRemoval2D Remove small patches from an image.
FillWindow vtkCamera Fit imageSetup the camera to fill the window with an image.
ImageShiftScale vtkImageShiftScale Shift and scale an image.
ImageStencil vtkImageStencil, vtkImageToImageStencil Copy one image into another image.
ImageStack vtkImageStack Display layers of images.
BorderPixelSize vtkImageSliceMapper Set the size of border pixels.
Interpolation vtkImageSlice, vtkImageProperty Set the interpolation type for the display of an image. If pixels look blurry instead of sharp when zoomed in, change this.
ImageText vtkFreeTypeUtilities, vtkImageBlend Draw text in an image.
ImageSeparableConvolution vtkImageSeparableConvolution Convolve a separable kernel with an image.
ImageHybridMedian2D vtkImageHybridMedian2D Median filter an image.
ImageDilateErode3D vtkImageDilateErode3D Dilate or erode an image.
ImageOpenClose3D vtkImageOpenClose3D Open or close (morphologically) an image.
ImageRange3D vtkImageRange3D Replace every pixel with the range of its neighbors according to a kernel.
ImageToPolyDataFilter vtkImageToPolyDataFilter, vtkImageQuantizeRGBToIndex Convert a vtkImageData to a vtkPolyData.
ImageCityBlockDistance vtkImageCityBlockDistance Compute the Manhattan distance from every point to every black point in a binary image.
CannyEdgeDetector Perform Canny edge detection on an image.
ImageToStructuredPoints vtkImageToStructuredPoints Convert a vtkImageData to a vtkStructuredPoints.
ImageNonMaximumSuppression vtkImageNonMaximumSuppression Find peaks in an image using non maximum suppression.
Transparency vtkImageMapToColors, vtkLookupTable Make part of an image transparent.
RTAnalyticSource vtkRTAnalyticSource An image source that can be used for regression testing
ImageMandelbrotSource vtkImageMandelbrotSource Create a Mandelbrot image.
ImageMagnify vtkImageMagnify Supersample and stretch an image.
ImageGridSource vtkImageGridSource Create a image of a grid.
ImageSinusoidSource vtkImageSinusoidSource Create a sinusoidal image.
Actor2D vtkActor2D vtkMapper2D 2D actor and mapper.
Cast vtkImageCast Cast an image to a different type.
ExtractComponents vtkImageExtractComponents Extract components of an image. This can be used to get, for example, the red channel of an image.
ImageAccumulateGreyscale vtkImageAccumulate, vtkBarChartActor Display a greyscale histogram.
BackgroundImage vtkImageCanvasSource2D Display an image as the background of a scene.
StaticImage vvtkImageViewer2 This will display the image, but not allow you to interact with it.
DotProduct vtkImageDotProduct Compute the pixel-wise dot product of two vector images.
DrawOnAnImage vtkImageCanvasSource2D Drawing on an image.
DrawShapes vtkImageCanvasSource2D Drawing shapes in an image.
ImageMask vtkImageMask Mask a region of an image.
ImageMathematics vtkImageMathematics Perform mathematical operations on an image.
ImageMirrorPad vtkImageMirrorPad Pad the edges of an extended image by mirror existing pixels.
InteractWithImage vtkImageActor, vtkInteractorStyleImage Visualize and interact with an image.
ImageSliceMapper vtkImageSlice, vtkImageSliceMapper Visualize and interact with an image. This is the new way to do this. It is much more powerful.
ImageSlice vtkImageSlice, vtkImageResliceMapper Visualize and interact with an image. This is even more powerful than vtkImageSliceMapper. It can also do oblique slices.
ImageRotate vtkImageSlice, vtkImageResliceMapper Rotate a 2D image. This is even more powerful than vtkImageSliceMapper. It can also do oblique slices.
NegativeIndices vtkImageData A very powerful feature of vtkImageData is that you can use negative indices.
PickingAPixel2 vtkPropPicker Picking a pixel 2 - modified version for exact pixel values.
PickingAPixel vtkPropPicker Picking a pixel.
MarkKeypoints vtkVectorText, vtkFollower Mark keypoints in an image.
ImageCheckerboard vtkImageCheckerboard Visually Compare Two Images.
ImageThreshold vtkImageThreshold Threshold an image.

Image Processing

Example Name VTK Classes Demonstrated Description
RescaleAnImage vtkImageShiftScale Rescale an image
ImageAccumulate vtkImageAccumulate Histogram
ImageValueRange vtkImageData Get the range of image pixel values (min/max).
ImageAnisotropicDiffusion2D vtkImageAnisotropicDiffusion2D Anisotropic diffusion (2D).
Blending2DImagesWithDifferentColorMaps vtkImageMapToColors Blending 2D images with different color maps.
CenterAnImage vtkImageChangeInformation Center an image.
CombineImages vtkImageBlend Combine two images.
CombiningRGBChannels vtkImageAppendComponents Combine layers into an RGB image.
ConvertToGreyScale vtkImageMagnitude grayscaleConvert RGB image to greyscale.
ImageDifference vtkImageDifference Compute the difference image of two images.
ImageLuminance vtkImageLuminance Convert RGB image to greyscale (luminance).
ImageMapToColors vtkImageMapToColors Use a lookup table to map scalar (grayscale) values to colorsConvert greyscale image to RGB.
Flip vtkImageFlip Flip an image.
Gradient vtkImageGradient Compute the gradient vector at every pixel.
ImageContinuousDilate3D vtkImageContinuousDilate3D Dilate an image.
ImageContinuousErode3D vtkImageContinuousErode3D Erode an image.
ImageConvolve vtkImageConvolve Convolve an image with a kernel.
ImageCorrelation vtkImageCorrelation Correlate two images.
ImageDivergence vtkImageDivergence Divergence of a vector field.
ImageEllipsoidSource vtkImageEllipsoidSource Create an image of an ellipsoid.
ImageFFT vtkImageFFT Compute the FFT of an image.
ImageGaussianSmooth vtkImageGaussianSmooth Smooth an image.
ImageGradientMagnitude vtkImageGradientMagnitude Compute the magnitude of the gradient at each pixel of an image.
ImageLaplacian vtkImageLaplacian Compute the Laplacian of an image.
ImageNoiseSource vtkImageNoiseSource Create an image of noise.
ImagePermute vtkImagePermute Switch axes of an image.
ImageShrink3D vtkImageShrink3D Resample an image.
ImageSobel2D vtkImageSobel2D Sobel edge detection 2D.
ImageVariance3D vtkImageVariance3D Construct a new image consisting of the variance of the input image at each pixel.
RGBToHSV vtkImageRGBToHSV Convert RGB to HSV.
ResizeImage vtkImageResize vtkImageSincInterpolator Resize an image using a sinc interpolator.


Example Name VTK Classes Demonstrated Description
AffineWidget vtkAffineWidget Apply an affine transformation interactively.
AngleWidget vtkAngleWidget
AngleWidget2D vtkAngleWidget, vtkAngleRepresentation2D vtkAngleWidget + vtkAngleRepresentation2D.
BalloonWidget vtkBalloonWidget
BiDimensionalWidget vtkBiDimensionalWidget When would you use this?
Border vtkBorderWidget 2D selection, 2D box.
BorderWorldCoords vtkBorderWidget 2D selection box in world coordinates.
BoxWidget vtkBoxWidget
BoxWidget2 vtkBoxWidget2
Caption vtkCaptionWidget
CheckerboardWidget vtkCheckerboardWidget, vtkCheckerboardRepresentation Compare two images using a checkerboard.
ContourWidget vtkContourWidget Create a contour from a set of points and dynamically change the contour using the points as control points.
Cursor2D vtkCursor2D
DistanceWidget vtkDistanceWidget
HoverWidget vtkHoverWidget How to detect a hover?
ImagePlaneWidget vtkImagePlaneWidget
ImageTracerWidget vtkImageTracerWidget Scribble on an image.
ImageTracerWidgetInsideContour vtkImageTracerWidget Highlight pixels inside a non-regular region scribbled on an image.
ImageTracerWidgetNonPlanar vtkImageTracerWidget Draw on a non-planar surface.
ImplicitPlaneWidget2 vtkImplicitPlaneWidget2 Clip polydata with an implicit plane.
LineWidget2 vtkLineWidget2
LogoWidget vtkLogoWidget Logo widget.
OrientationMarkerWidget vtkOrientationMarkerWidget Display a polydata as an orientation icon.
PlaneWidget vtkPlaneWidget Interact with a plane.
PointWidget vtkPointWidget
PolygonalSurfacePointPlacer vtkPolygonalSurfacePointPlacer Used in conjuntion with vtkContourWidget to draw curves on a surface.
RectilinearWipeWidget vtkImageRectilinearWipe, vtkRectilinearWipeWidget, vtkRectilinearWipeRepresentation Compare two images.
SeedWidget vtkSeedWidget Seed widget.
SeedWidgetImage vtkImageViewer2, vtkSeedWidget How to start the interaction?
Slider vtkSliderWidget, vtkSliderRepresentation3D 3D Slider.
Slider2D vtkSliderWidget, vtkSliderRepresentation2D 2D Slider.
SphereWidget vtkSphereWidget Sphere widget.
SphereWidget2 vtkSphereWidget2
SphereWidgetEvents vtkSphereWidget Sphere widget events.
SplineWidget vtkSplineWidget TexturedButtonWidget vtkButtonWidget,vtkTexturedButtonRepresentation2D Create a textured 2D buttonx.
TextWidget vtkSeedWidget vtkTextWidget Draw movable text.


Example Name VTK Classes Demonstrated Description
BoxChart vtkChartBox Box plot.
LinePlot vtkChartXY Line plot.
ScatterPlot vtkPlotPoints Scatter plot.
BarChart vtkChartXY Bar chart.
PieChart vtkChartPie, vtkPlotPie Pie chart.
ParallelCoordinates vtkChartParallelCoordinates Parallel coordinates.
StackedBar vtkPlotBar Stacked bar.
StackedPlot vtkPlotStacked Stacked plot.


Example Name VTK Classes Demonstrated Description
AnimateActors vtkAnimationScene, vtkAnimationCue Animate actors.
Animation vtkRenderWindowInteractor::CreateRepeatingTimer Move a sphere across a scene.
AnimationScene vtkAnimationScene, vtkAnimationCue Animation (the right way). Zoom in on a sphere.
DataAnimation vtkCallbackCommand, vtkProgrammableFilter Data Animation. Update points in a dataset every specified interval.
DataAnimationSubclass vtkCommand, vtkProgrammableFilter Update points in a dataset every specified interval (using a vtkCommand subclass instead of a callback function.

Geographic Visualization (Geovis)

Example Name VTK Classes Demonstrated Description
CompassWidget vtkCompassWidget Compass Widget.
EarthSource vtkEarthSource Create the Earth.
GeoAssignCoordinates vtkGeoAssignCoordinates Convert lat/long coordinates to world coordinates.

Information Visualization (Infovis)

Example Name VTK Classes Demonstrated Description
ParallelCoordinatesView vtkParallelCoordinatesView Parallel coordinates.
TreeMapView vtkTreeMapView Tree map.


Click here for a tutorial on how to setup Qt.

Example Name VTK Classes Demonstrated Description
QImageToImageSource vtkQImageToImageSource Convert a QImage to a vtkImageData.
ShowEvent Use QMainWindow::showEvent event to do things that you might want to do in the constructor
RenderWindowNoUiFile QVTKWidget This is a very basic example that shows how to create a Qt window. Typically, one would want to design a form in the QtDesigner (this is shown in RenderWindowUi).
RenderWindowUISingleInheritance QMainWindow Using a QVTKWidget with the Qt Single Inheritance model.
RenderWindowUIMultipleInheritance QMainWindow Using a QVTKWidget with the Qt Multiple Inheritance model.
SideBySideRenderWindows QApplication Side by side render windows.
QtBarChart vtkQtBarChart
Border Widget vtkBorderWidget, QApplication
EventQtSlotConnect vtkEventQtSlotConnect Connect a VTK event to a Qt slot.
ImageDataToQImage Convert a vtkImageData to a QImage.
ShareCameraBetweenQVTKWidgets Share the camera between QVTKWidgets.


You must turn on VTK_USE_MATLAB_MEX to use these.

Example Name VTK Classes Demonstrated Description
vtkMatlabEngineFilter vtkMatlabEngineFilter



If you have any trouble or errors with the following examples, please troubleshoot using these instructions.

Example Name VTK Classes Demonstrated Description
ConnectAndRead vtkMySQLDatabase, vtkSQLQuery Connect to and read a MySQL database.
CreateDatabase vtkMySQLDatabase Create a MySQL database.
WriteToDatabase vtkSQLQuery, vtkMySQLDatabase Write to a MySQL database.


RenderMan is a high quality rendering system create by Pixar. VTK can export RenderMan RIB files for rendering by prman. In the spring of 2015, Pixar released a non-commercial version of its RenderMan products.

Example Name VTK Classes Demonstrated Description
PolyDataRIB vtkRIBExporter Apply a RenderMan Shader to a PolyData.

Remote Modules

Remote modules are user contributed code that is not distributed with VTK. A description of a remote module and the location of its repository is listed in the VTK/Remote directory with the extension .remote.cmake. Once enabled, a remote module is treated like any other VTK module. Each of the remote module examples describes how to enable the example. More information about remote modules is here.

Example Name VTK Classes Demonstrated Description
FrenetSerretFrame vtkFrenetSerretFrame Compute tangent and normal vectors to a polyline.
FrenetSerretFrameDemo vtkFrenetSerretFrame Uses vtkSplineWidget to interact with a spline. Shows how to control a pipeline inside a callback.

Broken/Missing Examples (Please write/fix me!)

Some of these are simply shells waiting for a good example. Some of these have a specific problem that is noted. Please help improve them!

Testing Needed

Example Name VTK Classes Demonstrated Description
AVI (Windows only) vtkAVIWriter Someone please test this.
OggTheora vtkOggTheoraWriter Can't find lvtkoggtheora
MPEG2 vtkMPEG2Writer CMake won't find MPEG2 include?
FFMPEG vtkFFMPEGWriter CMake won't find FFMPEG include?
Display a histogram vtkImageAccumulate, vtkBarChartActor Testing images seem to vary slightly on different machines.

Small Problems

Example Name VTK Classes Demonstrated Description
Interact/move the vertices of a graph vtkGraph
Read an mdb Access database file vtkODBCDatabase Error: “Could not execute statement”
Sobel edge detection 3D vtkImageSobel3D
Anisotropic diffusion (3D) vtkImageAnisotropicDiffusion3D Need a suitable input.
Write an ExodusII file vtkExodusIIWriter Write a time varying file. Someone who is familiar with this format should make a reasonable example.
ImageReader2 vtkImageReader2 No errors, but no image is displayed. I think this is a superclass not intended to be used directly?
Low pass filter an image vtkImageIdealLowPass
Delete points vtkPolyData No longer crashes but doesn't seem to do anything. See example Delete cells.
Delete cells vtkPolyData Not sure if this has much utility?
Play/stop/fast forward etc buttons vtkPlaybackWidget Need to show user how to start recording? Playback a recording?
Vary the shape of vertices vtkGraphLayoutView
Vary the width of edges vtkGraphLayoutView
Write an unstructured grid to parallel files vtkXMLPUnstructuredGridWriter Even with SetNumberOfPieces(4), only 2 files are generated?
Convert a vtkTable to a vtkGraph vtkTableToGraph How to specify the columns?
Generate a diagonal matrix vtkDiagonalMatrixSource What type is output?
Generate different glyphs based on a table vtkGlyph3D How to specify which values get which glyphs?
Write an image file to parallel files vtkXMLPImageDataWriter Even with SetNumberOfPieces(4), only 2 files are generated?
Combine the points of multiple PolyData datasets vtkAppendPoints The data sets seem to have been combined (there are 10 points and 10 cells in the output), but nothing is displayed -- this is because the points and cells are copied but not the verts. See example vtkAppendPolyData instead (there's already an example for that).
Extract a subgraph vtkExtractSelectedGraph Waiting for dual vtkGraphView
Order cells from a viewing direction vtkKdTree
Merge selections vtkSelection
SpherePuzzle vtkSpherePuzzle Looks like a beach ball... what is the point?
Extract points based on a criterion function vtkExtractSelectedThresholds
Get connected cells vtkCellLinks How to use vtkCellLinks::Links class? How to know how many cells GetCells returns?
Convert data from an object into a vtkTable vtkDataObjectToTable How to get the point coordinates into the table?
vtkImageViewer2 vtkImageViewer2 How to start the interaction?
Convert a polydata to an implicit function vtkImplicitDataSet The error is: "Can't evaluate dataset!"
vtkCameraWidget vtkCameraWidget How to use this?
Compute occupancy of an object on a grid vtkVoxelModeller VTK_BIT is not supported - convert it?
Divide a point cloud into uniform cubic voxels vtkCellLocator We can determine which cell a point is in, but how to determine which points are in a particular cell?
Flight vtkInteractorStyleFlight linux keypresses not handled. I submitted a patch to the devel list - we'll see if they respond.
vtkPointHandleRepresentation2D vtkPointHandleRepresentation2D
RecordEvents vtkInteractorEventRecorder How to exit?
PlayBackEvents vtkInteractorEventRecorder How to slow down?
Quadric Surface Fitting vtkQuadric
Rectangular button source vtkRectangularButtonSource is this the intended usage?
ApplyColors vtkApplyColors How is this different from just adding a Colors array to a vtkDataSet?
vtkPCAAnalysisFilter vtkPCAAnalysisFilter What is the difference between this and vtkPCAStatistics? The eigenvalues vector doesn't seem to be valid. It seems like the eigenvector corresponding to the smallest value is stored as the normal of the cell in the output - how do you get the other two eigen vectors?

Wish List

Example Name VTK Classes Demonstrated Description
Plot data (Legacy method) vtkXYPlotActor The charts examples always seem to render slightly differently.
Display a histogram vtkImageAccumulate, XYPlotActor The charts examples always seem to render slightly differently.
vtkTableBasedClipDataSet vtkTableBasedClipDataSet Empty
vtkLSDynaReader vtkLSDynaReader Empty
vtkCompositeDataGeometryFilter vtkCompositeDataGeometryFilter Empty - combine multiple blocks into a single data set
vtkTryDowncast vtkTryDowncast Empty

Big Problems

Example Name VTK Classes Demonstrated Description
A comparison of some graph layout strategies vtkGraphLayoutView This crashes unless you build against the VTK-SideBySideGraphs branch from here: git@github.com:daviddoria/daviddoria-vtk.git
Extract iso-surfaces vtkMarchingContourFilter No output produced without a vtkVoxelModeller, strange output produced with a vtkVoxelModeller.
Set a value by manipulating something vtkContinuousValueWidget Can't instantiate this class? But nothing derives from it?
Delete a cell. vtkPolyData I tried this with lines and it doesn't work (crashes). The documentation says only works with polys - so wait for this functionality to be added?
Box intersection vtkBox This class doesn't have any non static functions! Need to create convenience functions.
vtkTensorProbeWidget vtkTensorProbeWidget How is this used?
GeoGlobeSource vtkGeoGlobeSource
GeoView vtkGeoView
vtkFrustumCoverageCuller vtkFrustumCoverageCuller Doesn't seem to have a property to specify a frustum? What is it for? How to use it?
vtkKdTreeSelector vtkKdTreeSelector Shell
vtkRungeKutta4 vtkRungeKutta4 Shell
vtkCoincidentPoints vtkCoincidentPoints What is this for?
Threaded/Parallel example Shell
Assign an array to a particular field vtkAssignAttribute Shell
vtkTransposeMatrix vtkTransposeMatrix What is this supposed to operate on? There is no vtkMatrix class.
vtkHyperOctree vtkHyperOctree What does this do?
vtkTextExtraction vtkTextExtraction Shell