Difference between revisions of "VTK/Examples/Cxx"

From KitwarePublic
< VTK‎ | Examples
Jump to navigationJump to search
(Replaced content with "= '''Examples are now hosted here: [https://kitware.github.io/vtk-examples/site/ VTKExamples website].''' =")
Tag: Replaced
 
(179 intermediate revisions by 13 users not shown)
Line 1: Line 1:
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.
+
= '''Examples are now hosted here: [https://kitware.github.io/vtk-examples/site/ VTKExamples website].''' =
 
 
Please add examples in your areas of expertise!
 
 
 
==Simple Operations==
 
{{VTKExamplesTable}}
 
|-
 
| [[VTK/Examples/Cxx/SimpleOperations/DistancePointToLine | Distance between a point and a line]] || {{DoxygenURL|vtkLine}} ||
 
|-
 
| [[VTK/Examples/Cxx/SimpleOperations/DistanceBetweenPoints | Distance between two points]] || [http://www.vtk.org/doc/nightly/html/classvtkMath.html#a11944eda4bd17e4e57bcd1e49c2f9446 vtkMath::Distance2BetweenPoints] || Computes the distance between two points
 
|-
 
| [[VTK/Examples/Cxx/SimpleOperations/UniformRandomNumber | Random number (uniform distribution)]] || {{DoxygenURL|vtkMath}} || Generates uniform random numbers
 
|-
 
| [[VTK/Examples/Cxx/SimpleOperations/GaussianRandomNumber | Random number (Gaussian distribution)]] || {{DoxygenURL|vtkMath}} || Generates Gaussian random numbers
 
|-
 
| [[VTK/Examples/Cxx/SimpleOperations/RandomSequence|Random sequence]] || {{DoxygenURL|vtkMinimalStandardRandomSequence}} || This is the preferred way to generate random numbers.
 
|-
 
| [[VTK/Examples/Cxx/SimpleOperations/ProjectPointPlane|Project a point onto a plane]] || {{DoxygenURL|vtkPlane}} || Project a point onto a plane
 
|-
 
| [[VTK/Examples/Cxx/SimpleOperations/FloatingPointExceptions|Floating Point Exceptions]] || {{DoxygenURL|vtkFloatingPointExceptions}} || Floating Point Exceptions
 
|-
 
| [[VTK/Examples/Cxx/SimpleOperations/PerspectiveTransform|Apply a perspective transformation to a point]] || {{VTKDoxygenURL|vtkPerspectiveTransform}} ||
 
|}
 
 
 
==Input and Output==
 
===Graph Formats===
 
 
 
===3D File Formats===
 
{{VTKExamplesTable}}
 
|-
 
| [[VTK/Examples/Cxx/IO/ConvertFile | Convert a file from one type to another]] ||  ||
 
|-
 
| [[VTK/Examples/Cxx/InfoVis/XGMLReader | Read a .gml file]] || {{VTKDoxygenURL|vtkXGMLReader}} ||
 
|}
 
 
 
====Standard Formats====
 
=====Input=====
 
{{VTKExamplesTable}}
 
|-
 
| [[VTK/Examples/Cxx/IO/SimplePointsReader | Read a simple "xyz" file of points]] || {{VTKDoxygenURL|vtkSimplePointsReader}} ||
 
|-
 
| [[VTK/Examples/Cxx/IO/ParticleReader|Read an "xyza" file]] || {{VTKDoxygenURL|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
 
|-
 
| [[VTK/Examples/Cxx/IO/ReadPlainText | Read a plain text file into a polydata]] || {{VTKDoxygenURL|vtkPolyData}} || Manually read a file using getline()
 
|-
 
| [[VTK/Examples/Cxx/IO/ReadPlainTextTriangles | Read a plain text file into a polydata]] || {{VTKDoxygenURL|vtkPolyData}} {{VTKDoxygenURL|vtkSmartPointer}} {{VTKDoxygenURL|vtkPoints}} {{VTKDoxygenURL|vtkCellArray}} {{VTKDoxygenURL|vtkXMLPolyDataWriter}} || Manually read a plain text file format
 
|-
 
| [[VTK/Examples/Cxx/InfoVis/ReadDelimitedFile | Read a delimited file into a polydata]] || {{VTKDoxygenURL|vtkDelimitedTextReader}} ||
 
|-
 
| [[VTK/Examples/Cxx/IO/ReadOBJ | Read an OBJ (.obj) File]] || {{VTKDoxygenURL|vtkOBJReader}} ||
 
|-
 
| [[VTK/Examples/Cxx/IO/ReadDICOMSeries | Convert a series of DICOM files into a VTI File]] || {{VTKDoxygenURL|vtkDICOMImageReader}} || This example demonstates how to read a series of DICOM images and scroll through slices
 
|-
 
| [[VTK/Examples/Cxx/IO/VRML|Read a VRML (WRL) file]] || {{VTKDoxygenURL|vtkVRMLImporter}} ||
 
|-
 
| [[VTK/Examples/Cxx/IO/IndividualVRML|Read individual VRML (WRL) actors]] || {{VTKDoxygenURL|vtkVRMLImporter}} || This example is used to get each actor and object from a scene and verify axes correspondence
 
|-
 
| [[VTK/Examples/Cxx/IO/ReadDICOM | Read DICOM file]] || {{VTKDoxygenURL|vtkDICOMImageReader}} ||
 
|-
 
| [[VTK/Examples/Cxx/IO/DumpXMLFile|Report the contents of a VTK XML or legacy file]] || {{VTKDoxygenURL|vtkDataSetReader}} ||
 
|-
 
| [[VTK/Examples/Cxx/IO/DEMReader | Read DEM (elevation map) files]] || {{VTKDoxygenURL|vtkDEMReader}} ||
 
|-
 
| [[VTK/Examples/Cxx/IO/ReadSTL | Read stereo lithography STL (.stl) files]] || {{VTKDoxygenURL|vtkSTLReader}} ||
 
|-
 
| [[VTK/Examples/Cxx/IO/ReadPLY | Read PLY (.ply) files]] || {{VTKDoxygenURL|vtkPLYReader}} ||
 
|-
 
| [[VTK/Examples/Cxx/IO/ReadPLOT3D | Read PLOT3D (.bin) files]] || {{VTKDoxygenURL|vtkPLOT3DReader}} || Read CFD (computational fluid dynamics) data produced by PLOT3D.
 
|-
 
| [[VTK/Examples/Cxx/IO/ReadPDB | Read Protein Data Bank files (.pdb) files]] || {{VTKDoxygenURL|vtkPDBReader}} || Read Protein Data Bank Files.
 
|}
 
 
 
=====Output=====
 
{{VTKExamplesTable}}
 
|-
 
| [[VTK/Examples/Cxx/IO/SimplePointsWriter | Write a simple ".xyz" file]] || {{VTKDoxygenURL|vtkSimplePointsWriter}} ||
 
|-
 
| [[VTK/Examples/Cxx/IO/WriteSTL | Write stereo lithography STL (.stl) files]] || {{VTKDoxygenURL|vtkSTLWriter}} ||
 
|-
 
| [[VTK/Examples/Cxx/IO/WritePLY | Write PLY (.ply) files]] || {{VTKDoxygenURL|vtkPLYWriter}} ||
 
|-
 
| [[VTK/Examples/Cxx/InfoVis/DelimitedTextWriter | Write data to a delimited file]] || {{VTKDoxygenURL|vtkDelimitedTextWriter}} ||
 
|}
 
 
 
====VTK Formats====
 
=====Input=====
 
 
 
{{VTKExamplesTable}}
 
|-
 
| [[VTK/Examples/Cxx/IO/ReadUnstructuredGrid|Read an unstructured grid (.vtu) file]] || {{VTKDoxygenURL|vtkXMLUnstructuredGridReader}} ||
 
|-
 
| [[VTK/Examples/Cxx/IO/ReadPolyData|Read a polygonal data (.vtp) file]] || {{VTKDoxygenURL|vtkXMLPolyDataReader}} ||
 
|-
 
| [[VTK/Examples/Cxx/IO/ReadImageData|Read a image data (.vti) file]] || {{VTKDoxygenURL|vtkXMLImageDataReader}} ||
 
|-
 
| [[VTK/Examples/Cxx/IO/ReadStructuredGrid|Read a structured grid (.vts) file]] || {{VTKDoxygenURL|vtkXMLStructuredGridReader}} ||
 
|-
 
| [[VTK/Examples/Cxx/IO/ReadRectilinearGrid|Read a rectilinear grid (.vtr) file]] || {{VTKDoxygenURL|vtkXMLRectilinearGridReader}} ||
 
|-
 
| [[VTK/Examples/Cxx/IO/ReadUnknownTypeXMLFile|Read an XML file and later decide what kind it is]] || {{VTKDoxygenURL|vtkXMLGenericDataObjectReader}} ||
 
|}
 
 
 
=====Output=====
 
 
 
{{VTKExamplesTable}}
 
|-
 
| [[VTK/Examples/Cxx/IO/WriteVTU|Write a .vtu file]] || {{VTKDoxygenURL|vtkXMLUnstructuredGridWriter}} || VTU is an "Unstructured Grid". This format allows for 3D data to be stored.
 
|-
 
| [[VTK/Examples/Cxx/IO/WriteVTP|Write a .vtp file]] || {{VTKDoxygenURL|vtkXMLPolyDataWriter}} || VTP is a "PolyData". This format allows for the most complex geometric objects to be stored.
 
|-
 
| [[VTK/Examples/Cxx/IO/WriteVTI|Write a .vti file]] || {{VTKDoxygenURL|vtkXMLImageDataWriter}} || VTI is an "ImageData".
 
|-
 
| [[VTK/Examples/Cxx/IO/XMLStructuredGridWriter|Write a .vts file from a vtkStructuredGrid]] || {{VTKDoxygenURL|vtkXMLStructuredGridWriter}} ||
 
|}
 
 
 
====Legacy VTK Formats====
 
 
 
{{VTKExamplesTable}}
 
|-
 
| [[VTK/Examples/Cxx/IO/GenericDataObjectReader|Read any type of legacy .vtk file]] || {{VTKDoxygenURL|vtkGenericDataObjectReader}} ||
 
|-
 
| [[VTK/Examples/Cxx/IO/StructuredGridReader|Read a structured grid (.vtk) file]] || {{VTKDoxygenURL|vtkStructuredGridReader}} ||
 
|-
 
| [[VTK/Examples/Cxx/IO/StructuredPointsReader | StructuredPointsReader]] || {{VTKDoxygenURL|vtkStructuredPointsReader}} ||
 
|}
 
 
 
===Image Formats===
 
 
 
====Input====
 
{{VTKExamplesTable}}
 
|-
 
| [[VTK/Examples/Cxx/IO/ReadBMP | Read BMP (.bmp) files]] || {{VTKDoxygenURL|vtkBMPReader}} ||
 
|-
 
| [[VTK/Examples/Cxx/IO/JPEGReader|Read a JPG image]] || {{VTKDoxygenURL|vtkJPEGReader}}||
 
|-
 
| [[VTK/Examples/Cxx/IO/PNGReader|Read a PNG image]] || {{VTKDoxygenURL|vtkPNGReader}}||
 
|-
 
| [[VTK/Examples/Cxx/IO/ReadPNM | Read PNM (.pnm) files]] || {{VTKDoxygenURL|vtkPNMReader}} ||
 
|-
 
| [[VTK/Examples/Cxx/IO/ReadTIFF | Read TIFF (.tif) files]] || {{VTKDoxygenURL|vtkTIFFReader}} ||
 
|-
 
| [[VTK/Examples/Cxx/IO/MetaImageReader | Read .mha files]] || {{VTKDoxygenURL|vtkMetaImageReader}} ||
 
|-
 
| [[VTK/Examples/Cxx/IO/ImageReader2Factory|Read most standard image formats.]] || {{VTKDoxygenURL|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.
 
|}
 
 
 
====Output====
 
 
 
{{VTKExamplesTable}}
 
|-
 
| [[VTK/Examples/Cxx/IO/WriteBMP | Write a BMP (.bmp) file]] || {{VTKDoxygenURL|vtkBMPWriter}} ||
 
|-
 
| [[VTK/Examples/Cxx/IO/JPEGWriter | Write a JPEG (.jpg) file]] || {{VTKDoxygenURL|vtkJPEGWriter}} ||
 
|-
 
| [[VTK/Examples/Cxx/IO/WritePNG | Write a PNG (.png) file]] || {{VTKDoxygenURL|vtkPNGWriter}} ||
 
|-
 
| [[VTK/Examples/Cxx/IO/WritePNM | Write a PNM (.pnm) file]] || {{VTKDoxygenURL|vtkPNMWriter}} ||
 
|-
 
| [[VTK/Examples/Cxx/IO/WriteTIFF | Write a TIFF (.tif) file]] || {{VTKDoxygenURL|vtkTIFFWriter}} ||
 
|-
 
| [[VTK/Examples/Cxx/IO/MetaImageWriter | Write a .mha/.mhd + .raw file]] || {{VTKDoxygenURL|vtkMetaImageWriter}} ||
 
|}
 
 
 
==Geometric Objects==
 
 
 
{{VTKExamplesTable}}
 
|-
 
| [[VTK/Examples/Cxx/GeometricObjects/PolygonIntersection| Compute the intersection of a line segment with a polygon]] || {{VTKDoxygenURL|vtkPolygon}} || IntersectWithLine()
 
|-
 
| [[VTK/Examples/Cxx/GeometricObjects/GeometricObjectsDemo| A demonstration of all geometric objects that work the same way]] ||  ||
 
|-
 
| [[VTK/Examples/Cxx/GeometricObjects/Arrow| Arrow]] || {{VTKDoxygenURL|vtkArrowSource}} ||
 
|-
 
| [[VTK/Examples/Cxx/GeometricObjects/Axes| Axes]] || {{VTKDoxygenURL|vtkAxesActor}} ||
 
|-
 
| [[VTK/Examples/Cxx/GeometricObjects/ColoredLines  |Colored Lines]] || {{VTKDoxygenURL|vtkCellData}} {{VTKDoxygenURL|vtkLine}} ||
 
|-
 
| [[VTK/Examples/Cxx/GeometricObjects/Cone | Cone]] || {{VTKDoxygenURL|vtkConeSource}} ||
 
|-
 
| [[VTK/Examples/Cxx/GeometricObjects/Cube | Cube]] || {{VTKDoxygenURL|vtkCubeSource}} ||
 
|-
 
| [[VTK/Examples/Cxx/GeometricObjects/Cylinder | Cylinder]] || {{VTKDoxygenURL|vtkCylinderSource}} ||
 
|-
 
| [[VTK/Examples/Cxx/GeometricObjects/Disk | Disk]] || {{VTKDoxygenURL|vtkDiskSource}} || A circle with a hole in it.
 
|-
 
| [[VTK/Examples/Cxx/GeometricObjects/Frustum | Frustum]] || {{VTKDoxygenURL|vtkFrustumSource}} ||
 
|-
 
| [[VTK/Examples/Cxx/GeometricObjects/Line | Line]] || {{VTKDoxygenURL|vtkLineSource}} ||
 
|-
 
| [[VTK/Examples/Cxx/GeometricObjects/LongLine | Manually create a polyline]] || {{VTKDoxygenURL|vtkLine}} ||
 
|-
 
| [[VTK/Examples/Cxx/GeometricObjects/Hexahedron | Hexahedron]]|| {{VTKDoxygenURL|vtkHexahedron}} ||
 
|-
 
| [[VTK/Examples/Cxx/GeometricObjects/OrientedArrow | Oriented Arrow]] || {{VTKDoxygenURL|vtkArrowSource}} ||
 
|-
 
| [[VTK/Examples/Cxx/GeometricObjects/Plane | Plane]]|| {{VTKDoxygenURL|vtkPlaneSource}} ||
 
|-
 
| [[VTK/Examples/Cxx/GeometricObjects/Planes | Planes]]|| {{VTKDoxygenURL|vtkPlanes}} ||
 
|-
 
| [[VTK/Examples/Cxx/GeometricObjects/PlanesIntersection | PlanesIntersection]]|| {{VTKDoxygenURL|vtkPlanesIntersection}} ||
 
|-
 
| [[VTK/Examples/Cxx/GeometricObjects/PlatonicSolid | PlatonicSolid]] || {{VTKDoxygenURL|vtkPlatonicSolidSource}} ||
 
|-
 
| [[VTK/Examples/Cxx/GeometricObjects/Point | Point]] || {{VTKDoxygenURL|vtkPoints}} ||
 
|-
 
| [[VTK/Examples/Cxx/GeometricObjects/Polygon | Polygon]] || {{VTKDoxygenURL|vtkPolygon}} ||
 
|-
 
| [[VTK/Examples/Cxx/GeometricObjects/Pyramid | Pyramid]] || {{VTKDoxygenURL|vtkPyramid}} ||
 
|-
 
| [[VTK/Examples/Cxx/GeometricObjects/PolyLine | PolyLine]] || {{VTKDoxygenURL|vtkPolyLine}} ||
 
|-
 
| [[VTK/Examples/Cxx/GeometricObjects/Quad | Quad]] || {{VTKDoxygenURL|vtkQuad}} ||
 
|-
 
| [[VTK/Examples/Cxx/GeometricObjects/RegularPolygonSource | Regular Polygon]] || {{VTKDoxygenURL|vtkRegularPolygonSource}} ||
 
|-
 
| [[VTK/Examples/Cxx/GeometricObjects/Sphere | Sphere]] || {{VTKDoxygenURL|vtkSphereSource}} ||
 
|-
 
| [[VTK/Examples/Cxx/GeometricObjects/Triangle | Triangle]] || {{VTKDoxygenURL|vtkTriangle}} ||
 
|-
 
| [[VTK/Examples/Cxx/GeometricObjects/TriangleStrip|Triangle strip]] || {{VTKDoxygenURL|vtkTriangleStrip}} ||
 
|-
 
| [[VTK/Examples/Cxx/GeometricObjects/Tetrahedron | Tetrahedron]] || {{VTKDoxygenURL|vtkTetra}} ||
 
|-
 
| [[VTK/Examples/Cxx/GeometricObjects/Vertex | Vertex]] || {{VTKDoxygenURL|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.
 
 
 
{{VTKExamplesTable}}
 
|-
 
| [[VTK/Examples/Cxx/GeometricObjects/ParametricObjects | Create and display a parametric object]] || {{VTKDoxygenURL|vtkParametricBoy}}, {{VTKDoxygenURL|vtkParametricConicSpiral}}, {{VTKDoxygenURL|vtkParametricCrossCap}}, {{VTKDoxygenURL|vtkParametricDini}}, {{VTKDoxygenURL|vtkParametricEllipsoid}}, {{VTKDoxygenURL|vtkParametricEnneper}}, {{VTKDoxygenURL|vtkParametricFigure8Klein}}, {{VTKDoxygenURL|vtkParametricKlein}}, {{VTKDoxygenURL|vtkParametricMobius}}, {{VTKDoxygenURL|vtkParametricRandomHills}}, {{VTKDoxygenURL|vtkParametricRoman}}, {{VTKDoxygenURL|vtkParametricSpline}}, {{VTKDoxygenURL|vtkParametricSuperEllipsoid}}, {{VTKDoxygenURL|vtkParametricSuperToroid}}, {{VTKDoxygenURL|vtkParametricTorus}} ||
 
|-
 
| [[VTK/Examples/Cxx/GeometricObjects/ParametricObjectsDemo | Demonstration of all of the vtkParametric* classes]] ||  ||
 
|}
 
 
 
----
 
 
 
==Implicit Functions and Iso-surfaces==
 
 
 
{{VTKExamplesTable}}
 
|-
 
| [[VTK/Examples/Cxx/ImplicitFunctions/IsoContours|Visualize different isocontours using a slider]] || {{VTKDoxygenURL|vtkContourFunction}} ||
 
|-
 
| [[VTK/Examples/Cxx/ImplicitFunctions/SampleFunction|Sample and visualize an implicit function]] || {{VTKDoxygenURL|vtkSampleFunction}} ||
 
|-
 
| [[VTK/Examples/Cxx/Modelling/ExtractLargestIsosurface|Extract largest isosurface]] || {{VTKDoxygenURL|vtkPolyDataConnectivityFilter}} ||
 
|-
 
| [[VTK/Examples/Cxx/VisualizationAlgorithms/BandedPolyDataContourFilter|BandedPolyDataContourFilter]] || {{VTKDoxygenURL|vtkBandedPolyDataContourFilter}} ||
 
|-
 
| [[VTK/Examples/Cxx/VisualizationAlgorithms/FilledContours|Create filled contours (vtkClipPolyData)]] || {{VTKDoxygenURL|vtkContourFilter}} ||
 
|-
 
| [[VTK/Examples/Cxx/ImplicitFunctions/ImplicitSphere|An implicit representation of a sphere]] || {{VTKDoxygenURL|vtkSphere}} ||
 
|-
 
| [[VTK/Examples/Cxx/Modelling/MarchingCubes|Marching cubes]] || {{VTKDoxygenURL|vtkMarchingCubes}} || Create a voxelized sphere
 
|-
 
| [[VTK/Examples/Cxx/WishList/Modelling/MarchingSquares|Marching squares]] || {{VTKDoxygenURL|vtkMarchingSquares}} || Create a contour from a structured point set (image)
 
|}
 
 
 
==Working with 3D Data==
 
{{VTKExamplesTable}}
 
|-
 
| [[VTK/Examples/Cxx/Filters/GenericClip|vtkGenericClip]] || {{VTKDoxygenURL|vtkGenericClip}},{{VTKDoxygenURL|vtkBridgeDataSet}}, {{VTKDoxygenURL|vtkGenericDataSet}} ||
 
|-
 
| [[VTK/Examples/Cxx/Filters/SelectionSource|Specify a selection]] || {{VTKDoxygenURL|vtkSelectionSource}}, {{VTKDoxygenURL|vtkExtractSelection}} ||
 
|-
 
| [[VTK/Examples/Cxx/Filters/WarpTo|Bend an object]] || {{VTKDoxygenURL|vtkWarpTo}} ||
 
|-
 
| [[VTK/Examples/Cxx/PolyData/CenterOfMass|Compute the center of mass of the points]] || {{VTKDoxygenURL|CenterOfMass}}||
 
|-
 
| [[VTK/Examples/Cxx/PolyData/BooleanOperationPolyDataFilter|Perform boolean operations on two vtkPolyData objects]] || {{VTKDoxygenURL|BooleanOperationPolyDataFilter}}||
 
|-
 
| [[VTK/Examples/Cxx/PolyData/DistancePolyDataFilter|Compute the distance function from one vtkPolyData to another]] || {{VTKDoxygenURL|DistancePolyDataFilter}}||
 
|-
 
| [[VTK/Examples/Cxx/PolyData/ImplicitPolyDataDistance|Compute the distance function in a space around a vtkPolyData]] || {{VTKDoxygenURL|ImplicitPolyDataDistance}}||
 
|-
 
| [[VTK/Examples/Cxx/PolyData/IntersectionPolyDataFilter|Compute the intersection of two vtkPolyData objects]] || {{VTKDoxygenURL|IntersectionPolyDataFilter}}||
 
|-
 
| [[VTK/Examples/Cxx/PolyData/ShrinkPolyData|Move all items in a PolyData towards their centroid]] || {{VTKDoxygenURL|vtkShrinkPolyData}}||
 
|-
 
| [[VTK/Examples/Cxx/Broken/VectorFieldNonZeroExtraction|Extract non-zero vectors from a vtkImageData]] || {{VTKDoxygenURL|vtkExtractSelectedThresholds}}|| Doesn't know which array to process?
 
|-
 
| [[VTK/Examples/Cxx/PolyData/MultiBlockMergeFilter|Combine MultiBlockDataSets]] || {{VTKDoxygenURL|vtkMultiBlockMergeFilter}}, {{VTKDoxygenURL|vtkMultiBlockDataSet}} ||
 
|-
 
| [[VTK/Examples/Cxx/PolyData/IterateOverLines|Iterate through the lines of a PolyData]] || {{VTKDoxygenURL|vtkCellArray}} ||
 
|-
 
| [[VTK/Examples/Cxx/PolyData/AlignFrames|Align coordinate frames]] || {{VTKDoxygenURL|vtkLandmarkTransform}} ||
 
|-
 
| [[VTK/Examples/Cxx/PolyData/WarpVector|vtkWarpVector]] || {{VTKDoxygenURL|vtkWarpVector}} ||
 
|-
 
| [[VTK/Examples/Cxx/IO/FindAllArrayNames|Get the names of all of the data arrays]] || {{VTKDoxygenURL|vtkPolyData}} ||
 
|-
 
| [[VTK/Examples/Cxx/PolyData/PolyDataGetPoint|Get point locations/coordinates from a vtkPolyData]] || {{VTKDoxygenURL|vtkPolyData}} ||
 
|-
 
| [[VTK/Examples/Cxx/PolyData/NullPoint|NullPoint]] || {{VTKDoxygenURL|vtkPointData}} || Set everything in PointData at a specified index to NULL
 
|-
 
| [[VTK/Examples/Cxx/Filtering/ContoursFromPolyData | Create contours from PolyData]] || {{VTKDoxygenURL|vtkCutter}} ||
 
|-
 
| [[VTK/Examples/Cxx/Filters/ImplicitBoolean | OperationsOnImplicitFunctions]] || {{VTKDoxygenURL|vtkImplicitBoolean}} || Operations include intersection and union.
 
|-
 
| [[VTK/Examples/Cxx/Filters/ConnectivityFilter | Color any dataset type based on connectivity]] || {{VTKDoxygenURL|vtkConnectivityFilter}} ||
 
|-
 
| [[VTK/Examples/Cxx/Filters/AppendFilter | Append different types of data]] || {{VTKDoxygenURL|vtkAppendFilter}} ||
 
|-
 
| [[VTK/Examples/Cxx/Filters/PerlinNoise | Perlin Noise]] || {{VTKDoxygenURL|vtkPerlinNoise}} ||
 
|-
 
| [[VTK/Examples/Cxx/Filters/Circle| Create a circle]] || {{VTKDoxygenURL|vtkCutter}} || Create a circle by cutting through a sphere.
 
|-
 
| [[VTK/Examples/Cxx/Filters/ProgrammableFilter | Create a custom filter without subclassing]] || {{VTKDoxygenURL|vtkProgrammableFilter}} ||
 
|-
 
| [[VTK/Examples/Cxx/Filters/TransformPolyData | Apply a Transformation to a PolyData]] || {{VTKDoxygenURL|vtkTransformPolyDataFilter}} ||
 
|-
 
| [[VTK/Examples/Cxx/Filters/CombinePolydata| Combine/Append PolyData]] || {{VTKDoxygenURL|vtkAppendPolyData}} ||
 
|-
 
| [[VTK/Examples/Cxx/PolyData/RuledSurfaceFilter|Create a surface between lines]] || {{VTKDoxygenURL|vtkRuledSurfaceFilter}} ||
 
|-
 
| [[VTK/Examples/Cxx/PolyData/CleanPolyData|Remove coincident points]] || {{VTKDoxygenURL|vtkCleanPolyData}} ||
 
|-
 
| [[VTK/Examples/Cxx/PolyData/CellPointNeighbors|Determine which cells share a single point with a specific cell]] || vtkPolyData::GetCellNeighbors || connected
 
|-
 
| [[VTK/Examples/Cxx/PolyData/CellEdgeNeighbors|Determine which cells share an edge with a specific cell]] || vtkPolyData::GetCellNeighbors || connected
 
|-
 
| [[VTK/Examples/Cxx/PolyData/PolyDataIsoLines|Iso lines on the surface of a polydata]] || {{VTKDoxygenURL|vtkBandedPolyDataContourFilter}} ||
 
|-
 
| [[VTK/Examples/Cxx/InfoVis/KMeansClustering|KMeans Clustering]] || {{VTKDoxygenURL|vtkKMeansStatistics}} ||
 
|-
 
| [[VTK/Examples/Cxx/InfoVis/PKMeansClustering|Parallel KMeans Clustering]] || {{VTKDoxygenURL|vtkPKMeansStatistics}} ||
 
|-
 
| [[VTK/Examples/Cxx/PolyData/WarpScalar|Move vertices along normals]] || {{VTKDoxygenURL|vtkWarpScalar}} ||
 
|-
 
| [[VTK/Examples/Cxx/PolyData/VertexConnectivity|Get a list of vertices attached (through an edge) to a vertex]] || vtkPolyData::GetCellPoints || Vertex connectivity (connected, neighbor)
 
|-
 
| [[VTK/Examples/Cxx/PolyData/DeletePoint|DeletePoint]] || {{VTKDoxygenURL|vtkPoints}}, {{VTKDoxygenURL|vtkPolyData}} ||
 
|-
 
| [[VTK/Examples/Cxx/PolyData/ThinPlateSplineTransform|ThinPlateSplineTransform]] || {{VTKDoxygenURL|vtkThinPlateSplineTransform}} ||
 
|-
 
| [[VTK/Examples/Cxx/PolyData/PointCellIds|Generate point and cell id arrays]] || {{VTKDoxygenURL|vtkIdFilter}} ||
 
|-
 
| [[VTK/Examples/Cxx/PolyData/Reflection|Mirror a DataSet]] || {{VTKDoxygenURL|vtkReflectionFilter}} ||
 
|-
 
| [[VTK/Examples/Cxx/PolyData/CellCenters|Compute points at the center of every cell]] || {{VTKDoxygenURL|vtkCellCenters}} ||
 
|-
 
| [[VTK/Examples/Cxx/PolyData/ExtractSelection|Extract selection points]] || {{VTKDoxygenURL|vtkExtractSelection}} ||
 
|-
 
| [[VTK/Examples/Cxx/PolyData/ExtractSelectedIds|Extract selected points]] || {{VTKDoxygenURL|vtkExtractSelectedIds}} || extract point, select point
 
|-
 
| [[VTK/Examples/Cxx/PolyData/ExtractSelectionOriginalId|Extract selection and find correspondence between new and original Id]] || {{VTKDoxygenURL|vtkExtractSelection}} ||
 
|-
 
| [[VTK/Examples/Cxx/PolyData/ExtractSelectionCells|Extract selection cells]] || {{VTKDoxygenURL|vtkExtractSelection}} || extract cell, select cell
 
|-
 
| [[VTK/Examples/Cxx/PolyData/ExtractCellsUsingPoints|Extract points but bring cells that are still complete with them]] || {{VTKDoxygenURL|vtkExtractSelection}}, {{VTKDoxygenURL|vtkSelection}}, {{VTKDoxygenURL|vtkSelectionNode}} ||
 
|-
 
| [[VTK/Examples/Cxx/PolyData/QuantizePolyDataPoints|Snap (quantize) points to a grid]] || {{VTKDoxygenURL|vtkQuantizePolyDataPoints}} ||
 
|-
 
| [[VTK/Examples/Cxx/PolyData/vtkReverseSense|Flip normals]] || {{VTKDoxygenURL|vtkReverseSense}} ||
 
|-
 
| [[VTK/Examples/Cxx/PolyData/vtkPointsProjectedHull|Convex hull of points projected onto the coordinate planes]] || {{VTKDoxygenURL|vtkPointsProjectedHull}} ||
 
|-
 
| [[VTK/Examples/Cxx/InfoVis/SCurveSpline|Create an SCurve spline on a set of points]] || {{VTKDoxygenURL|vtkSCurveSpline}} ||
 
|-
 
| [[VTK/Examples/Cxx/PolyData/KochanekSpline|Create an Kochanek spline on a set of points]] || {{VTKDoxygenURL|vtkKochanekSpline}} ||
 
|-
 
| [[VTK/Examples/Cxx/PolyData/ParametricSpline|Create a Cardinal spline on a set of points]] || {{VTKDoxygenURL|vtkCardinalSpline}}, {{VTKDoxygenURL|vtkParametricSpline}}, {{VTKDoxygenURL|vtkParametricFunctionSource}} ||
 
|-
 
| [[VTK/Examples/Cxx/PolyData/SelectVisiblePoints|Select visible points]] || {{VTKDoxygenURL|vtkSelectVisiblePoints}} ||
 
|-
 
| [[VTK/Examples/Cxx/Filtering/ExtractVisibleCells|Extract and highlight visible cells]] || {{VTKDoxygenURL|vtkHardwareSelector}} ||
 
|-
 
| [[VTK/Examples/Cxx/PolyData/vtkStripper|Convert triangles to triangle strips]] || {{VTKDoxygenURL|vtkStripper}} ||
 
|-
 
| [[VTK/Examples/Cxx/PolyData/DataSetSurfaceFilter|Convert vtkUnstructuredGrid to vtkPolyData]] || {{VTKDoxygenURL|vtkDataSetSurfaceFilter}} ||
 
|-
 
| [[VTK/Examples/Cxx/PolyData/GeometryFilter|Convert vtkUnstructuredGrid to vtkPolyData (another way)]] || {{VTKDoxygenURL|vtkGeometryFilter}} ||
 
|-
 
| [[VTK/Examples/Cxx/PolyData/ImplicitModeller|Compute the distance from an object to every point on a uniform grid]] || {{VTKDoxygenURL|vtkImplicitModeller}} ||
 
|-
 
| [[VTK/Examples/Cxx/PolyData/TransformFilter|Transform a data set]] || {{VTKDoxygenURL|vtkTransformFilter}} ||
 
|-
 
| [[VTK/Examples/Cxx/PolyData/InterpolateTerrain|Interpolate terrain]] || {{VTKDoxygenURL|vtkProbeFilter}} || [http://vtk.org/Wiki/Demystifying_the_vtkProbeFilter Here] is a good explanation of what is going on.
 
|-
 
| [[VTK/Examples/Cxx/PolyData/InterpolateMeshOnGrid|Interpolate a mesh over a grid]] || {{VTKDoxygenURL|vtkProbeFilter}} ||
 
|-
 
| [[VTK/Examples/Cxx/PolyData/PolyDataPointSampler|Sample a PolyData]] || {{VTKDoxygenURL|vtkPolyDataPointSampler}} || Sample the edges or surfaces of a polydata.
 
|-
 
| [[VTK/Examples/Cxx/PolyData/MaskPoints|Select a subset (mask) of a point set]] || {{VTKDoxygenURL|vtkMaskPoints}} ||
 
|-
 
| [[VTK/Examples/Cxx/PolyData/LinearExtrusion|Linear Extrusion]] || {{VTKDoxygenURL|vtkLinearExtrusionFilter}} || Extrude a shape.
 
|-
 
| [[VTK/Examples/Cxx/PolyData/RotationAroundLine|Rotation around a line]] || {{VTKDoxygenURL|vtkTransform}}, {{VTKDoxygenURL|vtkTransformPolyDataFilter}} ||
 
|-
 
| [[VTK/Examples/Cxx/PolyData/ExtractOutsideSurface | Extract the outer surface of a multiple surface polydata]] || {{VTKDoxygenURL|vtkPolyDataConnectivityFilter}} ||
 
|-
 
| [[VTK/Examples/Cxx/PolyData/ContoursToSurface | vtkVoxelContoursToSurfaceFilter]] || {{VTKDoxygenURL|vtkVoxelContoursToSurfaceFilter}} ||
 
|-
 
| [[VTK/Examples/Cxx/PolyData/TubeFilter|vtkTubeFilter]] || {{VTKDoxygenURL|vtkTubeFilter}} || Give lines a thickness (produce a cylinder around lines.
 
|-
 
| [[VTK/Examples/Cxx/PolyData/RibbonFilter|vtkRibbonFilter]] || {{VTKDoxygenURL|vtkRibbonFilter}} ||
 
|-
 
| [[VTK/Examples/Cxx/PolyData/ConvexHull_ShrinkWrap | Convex hull using shrink wrapping]] || {{VTKDoxygenURL|vtkSmoothPolyDataFilter}} ||
 
|-
 
| [[VTK/Examples/Cxx/PolyData/ConvexHull_vtkHull | Convex hull using vtkHull]] || {{VTKDoxygenURL|vtkHull}} ||
 
|-
 
| [[VTK/Examples/Cxx/PolyData/PointInsideObject | Check if a point is inside an object]] || {{VTKDoxygenURL|vtkSelectEnclosedPoints}} ||
 
|-
 
| [[VTK/Examples/Cxx/PolyData/PointInsideObject2 | Check if a point is inside an object (alternate method)]] || {{VTKDoxygenURL|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".
 
|-
 
| [[VTK/Examples/Cxx/PolyData/DataBounds|Data Bounds]] || vtkPolyData::GetBounds || Get the minimum and maximum value in each dimension. (Axis aligned bounding box)
 
|-
 
| [[VTK/Examples/Cxx/PolyData/TransformOrder|Demonstrate how the order of applying transforms affects the result]] || {{VTKDoxygenURL|vtkTransformPolyDataFilter}} ||
 
|-
 
| [[VTK/Examples/Cxx/PolyData/Outline|Outline]] || {{VTKDoxygenURL|vtkOutlineFilter}} || Draw the bounding box of the data
 
|-
 
| [[VTK/Examples/Cxx/PolyData/TriangleArea|Triangle Area]] || vtkTriangle::TriangleArea || Compute the area of all triangles in a polydata.
 
|-
 
| [[VTK/Examples/Cxx/PolyData/Silhouette|Silhouette]] || {{VTKDoxygenURL|vtkPolyDataSilhouette}} ||
 
|-
 
| [[VTK/Examples/Cxx/PolyData/ThresholdingPoints|Thresholding Points]] || {{VTKDoxygenURL|vtkThresholdPoints}} ||
 
|-
 
| [[VTK/Examples/Cxx/PolyData/ThresholdingCells|Thresholding Cells]] || {{VTKDoxygenURL|vtkThreshold}} ||
 
|-
 
| [[VTK/Examples/Cxx/PolyData/ProcrustesAlignmentFilter|Align point sets]] || {{VTKDoxygenURL|vtkProcrustesAlignmentFilter}} ||
 
|-
 
| [[VTK/Examples/Cxx/PolyData/GradientFilter|Compute the gradient of a scalar field on a data set]] || {{VTKDoxygenURL|vtkGradientFilter}} ||
 
|-
 
| [[VTK/Examples/Cxx/PolyData/PolyDataToImageData|Generate a binarized volume from a closed surface]] || {{VTKDoxygenURL|vtkPolyDataToImageStencil}} ||
 
|-
 
| [[VTK/Examples/Cxx/PolyData/PolyDataContourToImageData|Generate a binarized image from a closed contour]] || {{VTKDoxygenURL|vtkLinearExtrusionFilter}},{{VTKDoxygenURL|vtkPolyDataToImageStencil}} ||
 
|-
 
| [[VTK/Examples/Cxx/PolyData/ExtractPolyLinesFromPolyData|Extract polylines from polydata]] || {{VTKDoxygenURL|vtkPolyData}} ||
 
|-
 
| [[VTK/Examples/Cxx/PolyData/FitSplineToCutterOutput|Fit a spline to cutter output]] || {{VTKDoxygenURL|vtkKochanekSpline}}, {{VTKDoxygenURL|vtkSplineFilter}}, {{VTKDoxygenURL|vtkSpline}} ||
 
|-
 
| [[VTK/Examples/Cxx/PolyData/MergePoints|Remove duplicate (merge) points]] || {{VTKDoxygenURL|vtkMergePoints}} || Insert unique point
 
|-
 
| [[VTK/Examples/Cxx/PolyData/DecimatePolyline|Decimate polyline]] || {{VTKDoxygenURL|vtkDecimatePolylineFilter}} ||
 
|-
 
| [[VTK/Examples/Cxx/PolyData/FieldData|Add Global Miscellaneous Data (FieldData) to a Polydata]] || {{VTKDoxygenURL|vtkFieldData}} ||
 
|-
 
| [[VTK/Examples/Cxx/PolyData/PolyDataExtractNormals|Extract Normals from a Polydata]] || {{VTKDoxygenURL|vtkPolyDataNormals}} ||
 
|-
 
| [[VTK/Examples/Cxx/PolyData/DetermineArrayDataTypes|Determine data types of arrays]]|| {{VTKDoxygenURL|vtkPolyData}} ||
 
|-
 
| [[VTK/Examples/Cxx/PolyData/EmbedPointsIntoVolume|Embed points into a volume]]|| {{VTKDoxygenURL|vtkGaussianSplatter}} ||
 
|-
 
| [[VTK/Examples/Cxx/PolyData/CopyAllArrays|Copy all arrays from one vtkPolyData to another]]|| {{VTKDoxygenURL|vtkPolyData}} ||
 
|-
 
| [[VTK/Examples/Cxx/PolyData/ColoredPoints|Colored Points]] || {{VTKDoxygenURL|vtkUnsignedCharArray}} || Add three points to a polydata and associate a color with each of them.
 
|-
 
| [[VTK/Examples/Cxx/PolyData/TriangleColoredPoints|Triangle - Colored Points]] || {{VTKDoxygenURL|vtkUnsignedCharArray}} || Set the color of each point of a triangle. You will be able to interpolate the colors across the triangle.
 
|-
 
| [[VTK/Examples/Cxx/PolyData/TriangleSolidColor|Triangle - Solid Color]] || {{VTKDoxygenURL|vtkUnsignedCharArray}} || Create a solid colored triangle.
 
|-
 
| [[VTK/Examples/Cxx/PolyData/ColorCells|Color Cells]] || {{VTKDoxygenURL|vtkLookupTable}} || Color individual cells of a polydata
 
|-
 
| [[VTK/Examples/Cxx/PolyData/PolyDataCellNormals|Add/Get Normals to/from cells in a Polydata]] || {{VTKDoxygenURL|vtkCellData}} ||
 
|-
 
| [[VTK/Examples/Cxx/PolyData/PolyDataPointNormals|Add/Get Normals to/from points in a Polydata]] || {{VTKDoxygenURL|vtkPointData}} ||
 
|-
 
| [[VTK/Examples/Cxx/PolyData/MiscPointData|Add Miscellaneous Data to Points in a Polydata]] || {{VTKDoxygenURL|vtkPointData}}, {{VTKDoxygenURL|vtkFloatArray}} ||
 
|-
 
| [[VTK/Examples/Cxx/PolyData/GetMiscPointData|Get Miscellaneous Data from Points in a Polydata]] || {{VTKDoxygenURL|vtkDoubleArray}} ||
 
|-
 
| [[VTK/Examples/Cxx/PolyData/MiscCellData|Add Miscellaneous Data to Cells in a Polydata]] || {{VTKDoxygenURL|vtkCellData}} ||
 
|-
 
| [[VTK/Examples/Cxx/PolyData/GetMiscCellData|Get Miscellaneous Data from Cells in a Polydata]] || {{VTKDoxygenURL|vtkCellData}} ||
 
|-
 
| [[VTK/Examples/Cxx/PolyData/ExternalContour|Get the External Contour from Polydata]] || {{VTKDoxygenURL|vtkWindowToImageFilter}}, {{VTKDoxygenURL|vtkContourFilter}} ||
 
|-
 
| [[VTK/Examples/Cxx/PolyData/TransformPipeline|Combining the transformation, in order to manipulate a group of vtkActor.]] || {{VTKDoxygenURL|vtkTransform}} ||Shown in the example robot arm motion.
 
|}
 
 
 
===Data Type Conversions===
 
 
 
{{VTKExamplesTable}}
 
|-
 
| [[VTK/Examples/Cxx/PolyData/PolyDataToUnstructuredGrid|Convert a vtkPolyData to a vtkUnstructuredGrid]] || {{VTKDoxygenURL|vtkAppendFilter}} ||
 
|}
 
 
 
===Point cloud operations===
 
 
 
{{VTKExamplesTable}}
 
|-
 
| [[VTK/Examples/Cxx/PolyData/PointSource|Generate a random point cloud]] || {{VTKDoxygenURL|vtkPointSource}} ||
 
|-
 
| [[VTK/Examples/Cxx/PolyData/DownsamplePointCloud|Downsample a point cloud]] || {{VTKDoxygenURL|vtkCleanPolyData}} || Remove points so that there are no points within a tolerance of any point.
 
|}
 
 
 
===Working with Meshes===
 
 
 
{{VTKExamplesTable}}
 
|-
 
| [[VTK/Examples/Cxx/Meshes/AddCell|Add a cell]] || {{VTKDoxygenURL|vtkPolyData}} || Add a cell to an existing mesh.
 
|-
 
| [[VTK/Examples/Cxx/Meshes/MatrixMathFilter|Matrix math filter]] || {{VTKDoxygenURL|vtkMatrixMathFilter}} || Compute various quantities on cell and points in a mesh.
 
|-
 
| [[VTK/Examples/Cxx/PolyData/WeightedTransformFilter | vtkWeightedTransformFilter ]]  || {{VTKDoxygenURL|vtkWeightedTransformFilter}} ||
 
|-
 
| [[VTK/Examples/Cxx/PolyData/GreedyTerrainDecimation | Create a mesh from an ImageData ]]  || {{VTKDoxygenURL|vtkGreedyTerrainDecimation}} ||
 
|-
 
| [[VTK/Examples/Cxx/PolyData/vtkPolyDataConnectivityFilter_LargestRegion | Extract the largest connected region in a polydata]]  || {{VTKDoxygenURL|vtkPolyDataConnectivityFilter}} ||
 
|-
 
| [[VTK/Examples/Cxx/PolyData/vtkPolyDataConnectivityFilter_SpecifiedRegion | Extract a specific (specified) connected region in a polydata]] || {{VTKDoxygenURL|vtkPolyDataConnectivityFilter}} ||
 
|-
 
| [[VTK/Examples/Cxx/PolyData/ColorDisconnectedRegions | Color each disconnected region of a vtkPolyData a different color]] || {{VTKDoxygenURL|vtkPolyDataConnectivityFilter}} ||
 
|-
 
| [[VTK/Examples/Cxx/PolyData/Curvatures|Compute Gaussian, Mean, Min, and Max Curvatures]] || {{VTKDoxygenURL|vtkCurvatures}} ||
 
|-
 
| [[VTK/Examples/Cxx/PolyData/MeshQuality|Mesh Quality]] || {{VTKDoxygenURL|vtkMeshQuality}} ||
 
|-
 
| [[VTK/Examples/Cxx/PolyData/HighlightBadCells|Highlight Bad Cells]] || {{VTKDoxygenURL|vtkMeshQuality}} ||
 
|-
 
| [[VTK/Examples/Cxx/PolyData/PolygonalSurfaceContourLineInterpolator|Interactively find the shortest path between two points on a mesh]] || {{VTKDoxygenURL|vtkPolygonalSurfaceContourLineInterpolator}} ||
 
|-
 
| [[VTK/Examples/Cxx/PolyData/DijkstraGraphGeodesicPath|Find the shortest path between two points on a mesh]] || {{VTKDoxygenURL|vtkDijkstraGraphGeodesicPath}} ||
 
|-
 
| [[VTK/Examples/Cxx/PolyData/SelectPolyData|Select a region of a mesh]] || {{VTKDoxygenURL|vtkSelectPolyData}} ||
 
|-
 
| [[VTK/Examples/Cxx/PolyData/SmoothPolyDataFilter|Laplacian smoothing]] || {{VTKDoxygenURL|vtkSmoothPolyDataFilter}} ||
 
|-
 
| [[VTK/Examples/Cxx/PolyData/ClosedSurface|Check if a surface is closed]] || {{VTKDoxygenURL|vtkFeatureEdges}} ||
 
|-
 
| [[VTK/Examples/Cxx/Meshes/Decimation|Decimation]] || {{VTKDoxygenURL|vtkDecimatePro}} || Reduce the number of triangles in a mesh.
 
|-
 
| [[VTK/Examples/Cxx/Meshes/QuadricDecimation|Decimation (quadric decimation)]] || {{VTKDoxygenURL|vtkQuadricDecimation}} || Reduce the number of triangles in a mesh.
 
|-
 
| [[VTK/Examples/Cxx/Meshes/QuadricClustering|Decimation (quadric clustering)]] || {{VTKDoxygenURL|vtkQuadricClustering}} || Reduce the number of triangles in a mesh.
 
|-
 
| [[VTK/Examples/Cxx/Meshes/Subdivision|Subdivision]] || {{VTKDoxygenURL|vtkButterflySubdivisionFilter}}, {{VTKDoxygenURL|vtkLoopSubdivisionFilter}}, {{VTKDoxygenURL|vtkLinearSubdivisionFilter}} || Increase the number of triangles in a mesh.
 
|-
 
| [[VTK/Examples/Cxx/Meshes/BoundaryEdges|Finding Boundary Edges]] || {{VTKDoxygenURL|vtkFeatureEdges}} || Find the edges that are used by only one face.
 
|-
 
| [[VTK/Examples/Cxx/Meshes/FillHoles|Fill Holes]] || {{VTKDoxygenURL|vtkFillHolesFilter}} || Close holes in a mesh.
 
|-
 
| [[VTK/Examples/Cxx/Meshes/WindowedSincPolyDataFilter|Windowed Sinc PolyData Filter|Smooth a mesh (windowed sinc filter)]] || {{VTKDoxygenURL|vtkWindowedSincPolyDataFilter}} || Smooth a mesh.
 
|-
 
| [[VTK/Examples/Cxx/Meshes/Color a mesh by height|Color a mesh by height]]|| {{VTKDoxygenURL|vtkLookupTable}} || Colormap, color map
 
|-
 
| [[VTK/Examples/Cxx/Meshes/ElevationFilter|Color a mesh by height]] || {{VTKDoxygenURL|vtkElevationFilter}} ||
 
|-
 
| [[VTK/Examples/Cxx/Meshes/SimpleElevationFilter|Color a mesh by dotting a vector from the origin to each point with a specified vector]] || {{VTKDoxygenURL|vtkSimpleElevationFilter}} ||
 
|-
 
| [[VTK/Examples/Cxx/Meshes/Triangulate a mesh|Triangulate a mesh]] || {{VTKDoxygenURL|vtkTriangleFilter}} || Convert all polygons in a mesh to triangles.
 
|-
 
| [[VTK/Examples/Cxx/Meshes/ExtractEdges|Extract Edges]] || {{VTKDoxygenURL|vtkExtractEdges}} ||
 
|-
 
| [[VTK/Examples/Cxx/Meshes/CellEdges|Get edges of cells]] || {{VTKDoxygenURL|vtkCell}} ||
 
|-
 
| [[VTK/Examples/Cxx/Meshes/SolidClip|Create a "solid" clip]] || {{VTKDoxygenURL|vtkClipPolyData}} ||
 
|-
 
| [[VTK/Examples/Cxx/Meshes/CapClip|Cap a clipped polydata with a polygon]] || {{VTKDoxygenURL|vtkClipPolyData}} ||
 
|-
 
| [[VTK/Examples/Cxx/Meshes/OBBDicer|OBBDicer]] || {{VTKDoxygenURL|vtkOBBDicer}} || Breakup a mesh into pieces.
 
|-
 
|}
 
 
 
===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: [http://vtk.org/Wiki/VTK/Tutorials/3DDataTypes]. Image data can represent at typical 2D image, but also, a 3D volume.
 
 
 
* [[VTK/Examples/Cxx/Visualization/StructuredDataTypes|Demonstration of structured data types]]
 
* [[VTK/Examples/Cxx/StructuredData/GetLinearPointId|Get the linear point id of a point in a grid]]
 
 
 
====vtkImageData====
 
{{VTKExamplesTable}}
 
|-
 
| [[VTK/Examples/Cxx/ImageData/GetCellCenter|Get the coordinates of the center of a cell]] || {{VTKDoxygenURL|vtkImageData}}||
 
|-
 
| [[VTK/Examples/Cxx/ImageData/CellIdFromGridCoordinates|Get the id of a cell from its grid coordinates]] || {{VTKDoxygenURL|vtkStructuredData}}||
 
|-
 
| [[VTK/Examples/Cxx/ImageData/IterateImageData|Iterating over a vtkImageData]] || {{VTKDoxygenURL|vtkImageData}} || Set and access locations in a 3D image. Iterate.
 
|-
 
| [[VTK/Examples/Cxx/ImageData/ImageNormalize|Normalize an image]] || {{VTKDoxygenURL|vtkImageNormalize}} ||
 
|-
 
| [[VTK/Examples/Cxx/ImageData/ExtractVOI|Extract a volume of interest (subvolume)]] || {{VTKDoxygenURL|vtkExtractVOI}} || Crop
 
|-
 
| [[VTK/Examples/Cxx/ImageData/vtkImageWeightedSum|Add two or more images]] || {{VTKDoxygenURL|vtkImageWeightedSum}} ||
 
|-
 
| [[VTK/Examples/Cxx/ImageData/ImageReslice|Resize a vtkImageData]] || {{VTKDoxygenURL|vtkImageReslice}} ||
 
|-
 
| [[VTK/Examples/Cxx/ImageData/ImageTranslateExtent|Change the extent of a vtkImageData]] || {{VTKDoxygenURL|vtkImageTranslateExtent}} ||
 
|}
 
 
 
 
 
====Conversions====
 
{{VTKExamplesTable}}
 
|-
 
| [[VTK/Examples/Cxx/ImageData/ImageDataGeometryFilter|Convert a vtkImageData to a vtkPolyData]] || {{VTKDoxygenURL|vtkImageDataGeometryFilter}} ||
 
|-
 
| [[VTK/Examples/Cxx/ImageData/ImageDataToPointSet|Convert a vtkImageData to a vtkStructuredGrid]] || {{VTKDoxygenURL|vtkImageDataToPointSet}} ||
 
|}
 
 
 
====vtkStructuredGrid====
 
 
 
{{VTKExamplesTable}}
 
|-
 
| [[VTK/Examples/Cxx/StructuredGrid/StructuredGrid|Structured Grid]] || {{VTKDoxygenURL|vtkStructuredGrid}} ||
 
|-
 
| [[VTK/Examples/Cxx/StructuredGrid/VisualizeStructuredGrid|Visualize the points of a structured grid]] || {{VTKDoxygenURL|vtkStructuredGridGeometryFilter}} ||
 
|-
 
| [[VTK/Examples/Cxx/StructuredGrid/OutlineStructuredGrid|Visualize the outline of a structured grid]] || {{VTKDoxygenURL|vtkStructuredGridOutlineFilter}} ||
 
|-
 
| [[VTK/Examples/Cxx/StructuredGrid/VisualizeStructuredGridCells|Visualize the cells of a structured grid]] || {{VTKDoxygenURL|vtkShrinkFilter}} ||
 
|-
 
| [[VTK/Examples/Cxx/StructuredGrid/BlankPoint|Blank a point of a vtkStructuredGrid]] || {{VTKDoxygenURL|vtkStructuredGrid}} ||
 
 
 
|}
 
 
 
====vtkStructuredPoints====
 
 
 
{{VTKExamplesTable}}
 
|-
 
| [[VTK/Examples/Cxx/StructuredPoints/StructuredPointsToUnstructuredGrid|Convert a vtkStructuredPoints to a vtkUnstructuredGrid]] || {{VTKDoxygenURL|vtkStructuredPoints}}, {{VTKDoxygenURL|vtkUnstructuredGrid}}||
 
|}
 
 
 
====vtkRectilinearGrid====
 
 
 
{{VTKExamplesTable}}
 
|-
 
| [[VTK/Examples/Cxx/RectilinearGrid/RectilinearGrid|Rectilinear grid]] || {{VTKDoxygenURL|vtkRectilinearGrid}} ||
 
|-
 
| [[VTK/Examples/Cxx/RectilinearGrid/VisualizeRectilinearGridCells|Visualize the cells of a rectilinear grid]] || {{VTKDoxygenURL|vtkRectilinearGrid}}, {{VTKDoxygenURL|vtkShrinkFilter}}||
 
|-
 
| [[VTK/Examples/Cxx/RectilinearGrid/RectilinearGridToTetrahedra|Convert a vtkRectilinearGrid to a vtkUnstructuredGrid mesh]] || {{VTKDoxygenURL|vtkRectilinearGridToTetrahedra}} ||
 
|}
 
 
 
===Registration===
 
 
 
{{VTKExamplesTable}}
 
|-
 
| [[VTK/Examples/Cxx/Filters/IterativeClosestPointsTransform|Iterative Closest Points (ICP) Transform]] || {{VTKDoxygenURL|vtkIterativeClosestPointTransform}} ||
 
|-
 
| [[VTK/Examples/Cxx/Filters/LandmarkTransform|Landmark Transform]] || {{VTKDoxygenURL|vtkLandmarkTransform}} ||
 
|}
 
 
 
===Surface reconstruction===
 
 
 
{{VTKExamplesTable}}
 
|-
 
| [[VTK/Examples/Cxx/Filters/GaussianSplat|Create a surface from Unorganized Points (Gaussian Splat)]] || {{VTKDoxygenURL|vtkGaussianSplatter}} ||
 
|-
 
| [[VTK/Examples/Cxx/Filters/TriangulateTerrainMap|Triangulate a Terrain Map]] || {{VTKDoxygenURL|vtkDelaunay2D}} || Generate heights (z values) on a 10x10 grid (a terrain map) and then triangulate the points to form a surface.
 
|-
 
| [[VTK/Examples/Cxx/Medical/GenerateCubesFromLabels|Create cubes from labeled volume data]] || {{VTKDoxygenURL|vtkMetaImageReader}}, {{VTKDoxygenURL|vtkMaskFields}} ||
 
|-
 
| [[VTK/Examples/Cxx/Medical/GenerateModelsFromLabels|Create models from labeled volume data (Discrete MarchingCubes)]] || {{VTKDoxygenURL|vtkDiscreteMarchingCubes}} ||
 
|-
 
| [[VTK/Examples/Cxx/Modelling/Delaunay3D|Create a solid mesh from Unorganized Points (Delaunay3D)]] || {{VTKDoxygenURL|vtkDelaunay3D}} || Convex hull.
 
|-
 
| [[VTK/Examples/Cxx/Filters/SurfaceFromUnorganizedPointsWithPostProc|Create a surface from Unorganized Points (with post processing)]] || {{VTKDoxygenURL|vtkSurfaceReconstructionFilter}} ||
 
|-
 
| [[VTK/Examples/Cxx/Filters/SurfaceFromUnorganizedPoints|Create a surface from Unorganized Points]] || {{VTKDoxygenURL|vtkSurfaceReconstructionFilter}} ||
 
|}
 
 
 
==Utilities==
 
{{VTKExamplesTable}}
 
|-
 
| [[VTK/Examples/Cxx/Utilities/FullScreen|Maximize/full screen a vtkRenderWindow]] || {{VTKDoxygenURL|vtkRenderWindow}} ||
 
|-
 
| [[VTK/Examples/Cxx/Utilities/SortDataArray|Reorder array values based on an ordering (key) array]] ||  ||
 
|-
 
| [[VTK/Examples/Cxx/Utilities/ShallowCopy|Shallow copy a VTK object]] ||  ||
 
|-
 
| [[VTK/Examples/Cxx/Utilities/DeepCopy|Deep copy a VTK object]] ||  ||
 
|-
 
| [[VTK/Examples/Cxx/Utilities/ZBuffer|Capture the Z-buffer/depth buffer]] || {{VTKDoxygenURL|vtkRenderer}} || zbuffer
 
|-
 
| [[VTK/Examples/Cxx/Utilities/ShareCamera|Share a camera between multiple renderers]] || {{VTKDoxygenURL|vtkRenderer}}, {{VTKDoxygenURL|vtkCamera}} ||
 
|-
 
| [[VTK/Examples/Cxx/Utilities/ArrayCalculator|Perform in-place operations on arrays]] || {{VTKDoxygenURL|vtkArrayCalculator}} ||
 
|-
 
| [[VTK/Examples/Cxx/Utilities/FileOutputWindow|File Output Window]] || {{VTKDoxygenURL|vtkFileOutputWindow}} || Write errors to a log file instead of the screen.
 
|-
 
| [[VTK/Examples/Cxx/Utilities/ArrayWriter|Write a DenseArray or SparseArray to a file]] || ||
 
|-
 
| [[VTK/Examples/Cxx/Utilities/VisualDebugging|Update the screen from inside an algorithm]] || || Visual debugging
 
|-
 
| [[VTK/Examples/Cxx/Utilities/FrameRate|Get the frame rate of the rendering]] || ||
 
|-
 
| [[VTK/Examples/Cxx/Utilities/GetDataRoot |Find the path of VTK_DATA_ROOT]] || {{VTKDoxygenURL|vtkTesting}} ||
 
|-
 
| [[VTK/Examples/Cxx/Utilities/ArrayLookup |Find the location of a value in a vtkDataArray]] || {{VTKDoxygenURL|vtkDataArray}} || vtkDataArray::LookupValue
 
|-
 
| [[VTK/Examples/Cxx/Utilities/PointInPolygon |Point inside polygon test]] || {{VTKDoxygenURL|vtkPolygon}} || vtkPolygon::PointInPolygon
 
|-
 
| [[VTK/Examples/Cxx/Utilities/BoundingBox |Bounding Box construction]] || {{VTKDoxygenURL|vtkBoundingBox}} ||
 
|-
 
| [[VTK/Examples/Cxx/Utilities/BoundingBoxIntersection |Box intersection and Inside tests]] || {{VTKDoxygenURL|vtkBoundingBox}} ||
 
|-
 
| [[VTK/Examples/Cxx/Utilities/FilterProgress |Monitor a filters progress]] ||  ||
 
|-
 
| [[VTK/Examples/Cxx/Visualization/MultipleViewports |Multiple Viewports]] || vtkRenderer::SetViewPort ||
 
|-
 
| [[VTK/Examples/Cxx/Visualization/SideBySideViewports | Side by side viewports]] || vtkRenderer::SetViewPort ||
 
|-
 
| [[VTK/Examples/Cxx/Visualization/MultipleRenderWindows | MultipleRenderWindows]] || {{VTKDoxygenURL|vtkRenderWindow}} ||
 
|-
 
| [[VTK/Examples/Cxx/PolyData/Casting | Casting VTK objects]]|| vtkObject::SafeDownCast ||
 
|-
 
| [[VTK/Examples/Cxx/TextAnalysis/ConcatenateArray|Concatenate two arrays]] || {{VTKDoxygenURL|vtkConcatenateArray}} ||
 
|-
 
| [[VTK/Examples/Cxx/Utilities/BrownianPoints|Produce a random vector at each point in a dataset]] || {{VTKDoxygenURL|vtkBrownianPoints}} ||
 
|-
 
| [[VTK/Examples/Cxx/Utilities/vtkVector|Mathematical vector class]] || {{VTKDoxygenURL|vtkVector}} ||
 
|-
 
| [[VTK/Examples/Cxx/Utilities/vtkPCAStatistics|Compute Principle Component Analysis (PCA) values]] || {{VTKDoxygenURL|vtkPCAStatistics}} ||
 
|-
 
| [[VTK/Examples/Cxx/Utilities/PCADemo|Project 2D points onto the best 1D subspace (PCA Demo)]] || {{VTKDoxygenURL|vtkPCAStatistics}} ||
 
|-
 
| [[VTK/Examples/Cxx/InfoVis/PassThrough|Pass input along to output]] || {{VTKDoxygenURL|vtkPassThrough}} ||
 
|-
 
| [[VTK/Examples/Cxx/InfoVis/ArrayToTable|Convert a vtkDenseArray to a vtkTable]] || {{VTKDoxygenURL|vtkArrayToTable}} ||
 
|-
 
| [[VTK/Examples/Cxx/Utilities/CardinalSpline|Cardinal spline Interpolation]] || {{VTKDoxygenURL|vtkCardinalSpline}} ||
 
|-
 
| [[VTK/Examples/Cxx/Utilities/ShepardMethod|Shepard method interpolation]] || {{VTKDoxygenURL|vtkShepardMethod}} ||
 
|-
 
| [[VTK/Examples/Cxx/Utilities/TimerLog|Timer log]] || {{VTKDoxygenURL|vtkTimerLog}} ||
 
|-
 
| [[VTK/Examples/Cxx/Utilities/TimeStamp|Time stamp]] || {{VTKDoxygenURL|vtkTimeStamp}} ||
 
|-
 
| [[VTK/Examples/Cxx/Utilities/CommandSubclass|Subclass vtkCommand]] || {{VTKDoxygenURL|vtkCommand}} || Instead of using a callback function, it is more powerful to subclass vtkCommand.
 
|-
 
| [[VTK/Examples/Cxx/Utilities/PiecewiseFunction|Interpolation using a piecewise function]] || {{VTKDoxygenURL|vtkPiecewiseFunction}} ||
 
|-
 
| [[VTK/Examples/Cxx/Utilities/Variant|Convert between data types]] || {{VTKDoxygenURL|vtkVariant}} ||
 
|-
 
| [[VTK/Examples/Cxx/Utilities/Coordinate|Coordinate system conversions]]|| {{VTKDoxygenURL|vtkCoordinate}} ||
 
|-
 
| [[VTK/Examples/Cxx/Utilities/CheckVTKVersion|Check VTK Version]] || {{VTKDoxygenURL|vtkVersion}} ||
 
|-
 
| [[VTK/Examples/Cxx/Utilities/ObserveError|Catch errors and warnings]] || {{VTKDoxygenURL|vtkCommand}} ||
 
|-
 
| [[VTK/Examples/Cxx/Utilities/VersionMacros|Check VTK Version]] || Macro/#define's ||
 
|-
 
| [[VTK/Examples/Cxx/Utilities/ColorLookupTable|Color Lookup Table]] || {{VTKDoxygenURL|vtkLookupTable}} ||
 
|-
 
| [[VTK/Examples/Cxx/Utilities/ColorTransferFunction|Color Transfer Function]] || {{VTKDoxygenURL|vtkColorTransferFunction}} ||
 
|-
 
| [[VTK/Examples/Cxx/Utilities/DiscretizableColorTransferFunction|Discretizable Color Transfer Function]] || {{VTKDoxygenURL|vtkDiscretizableColorTransferFunction}} ||
 
|-
 
| [[VTK/Examples/Cxx/Utilities/ConstructTable|Construct a Table]] || {{VTKDoxygenURL|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.
 
|-
 
| [[VTK/Examples/Cxx/Filtering/Delaunay2D|Delaunay Triangulation (2D)]] || {{VTKDoxygenURL|vtkDelaunay2D}} || Perform a 2D Delaunay triangulation on a point set.
 
|-
 
| [[VTK/Examples/Cxx/Filtering/ConstrainedDelaunay2D|Constrained Delaunay Triangulation (2D)]] ||  {{VTKDoxygenURL|vtkDelaunay2D}} || Perform a 2D Delaunay triangulation on a point set respecting a specified boundary.
 
|-
 
| [[VTK/Examples/Cxx/Utilities/KnownLengthArray|Known Length Array]] || {{VTKDoxygenURL|vtkFloatArray}} ||
 
|-
 
| [[VTK/Examples/Cxx/Utilities/UnknownLengthArray|Unknown Length Array]] || {{VTKDoxygenURL|vtkFloatArray}} ||
 
|-
 
| [[VTK/Examples/Cxx/Utilities/KnownLengthArrayOfVectors|Array of Vectors (Known Length)]] || {{VTKDoxygenURL|vtkFloatArray}} ||
 
|-
 
| [[VTK/Examples/Cxx/Utilities/UnknownLengthArrayOfVectors|Array of Vectors (Unknown Length)]] || {{VTKDoxygenURL|vtkFloatArray}} ||
 
|-
 
| [[VTK/Examples/Cxx/Utilities/DenseArrayRange|Get the bounds of a vtkDenseArray]] || {{VTKDoxygenURL|vtkDenseArray}}, {{VTKDoxygenURL|vtkArrayRange}} ||
 
|-
 
| [[VTK/Examples/Cxx/Utilities/ArrayRange|Get the bounds (min,max) of a vtk array]] || vtkFloatArray::GetRange || minimum, maximum
 
|-
 
| [[VTK/Examples/Cxx/Utilities/2DArray|2D Array]] || {{VTKDoxygenURL|vtkDenseArray}} ||
 
|-
 
| [[VTK/Examples/Cxx/Utilities/3DArray|3D Array]] || {{VTKDoxygenURL|vtkDenseArray}} ||
 
|-
 
| [[VTK/Examples/Cxx/Utilities/SparseArray|Sparse Array]] || {{VTKDoxygenURL|vtkSparseArray}} ||
 
|-
 
| [[VTK/Examples/Cxx/Utilities/CustomDenseArray|Custom type Dense (2D) Array]] || {{VTKDoxygenURL|vtkDenseArray}} ||
 
|-
 
| [[VTK/Examples/Cxx/Utilities/DetermineVariableType|Determine the type of a VTK variable]] || GetClassName() ||
 
|-
 
| [[VTK/Examples/Cxx/Utilities/DetermineActorType|Determine the type of an actor]] || {{VTKDoxygenURL|vtkActor}}, {{VTKDoxygenURL|vtkActorCollection}} ||
 
|-
 
| [[VTK/Examples/Cxx/Utilities/Screenshot|Screenshot]] || {{VTKDoxygenURL|vtkWindowToImageFilter}} ||
 
|-
 
| [[VTK/Examples/Cxx/Utilities/DirectoryFileExtensions|Directory File Extensions]] || {{VTKDoxygenURL|vtkDirectory}}, vtksys/SystemTools ||
 
|-
 
| [[VTK/Examples/Cxx/Utilities/FilenameFunctions|FilenameFunctions]] || {{VTKDoxygenURL|vtkDirectory}}, vtksys/SystemTools || Do things like get the file extension, strip the file extension, etc.
 
|-
 
| [[VTK/Examples/Cxx/Utilities/Timer|Timer]] || vtkRenderWindowInteractor::CreateRepeatingTimer ||
 
|-
 
| [[VTK/Examples/Cxx/Utilities/OffScreenRendering|Off Screen Rendering]] || {{VTKDoxygenURL|vtkImagingFactory}}, {{VTKDoxygenURL|vtkGraphicsFactory}} ||
 
|-
 
| [[VTK/Examples/Cxx/Utilities/FunctionParser|String function parser]] || {{VTKDoxygenURL|vtkFunctionParser}} ||
 
|-
 
| [[VTK/Examples/Cxx/Utilities/WindowModifiedEvent|Catch the window modified event]] || {{VTKDoxygenURL|vtkRenderWindow}} ||
 
|}
 
 
 
==CMake Techniques==
 
{{VTKExamplesTable}}
 
|-
 
| [[VTK/Examples/Cxx/CMakeTechniques/CheckForModule|Check if a specific module is present]] ||  ||
 
|-
 
| [[VTK/Examples/Cxx/Utilities/CMakeVTKVersionCheck|Check VTK Version in CMake]] ||  ||
 
|}
 
 
 
==Math Operations==
 
{{VTKExamplesTable}}
 
|-
 
| [[VTK/Examples/Cxx/Math/LUFactorization|LU Factorization]] || {{VTKDoxygenURL|vtkMath}} ||
 
|-
 
| [[VTK/Examples/Cxx/Math/NormalizeVector|Normalize a vector]] || {{VTKDoxygenURL|vtkMath}} ||
 
|-
 
| [[VTK/Examples/Cxx/Math/VectorDot|vtkVectorDot]] || {{VTKDoxygenURL|vtkVectorDot}} ||
 
|-
 
| [[VTK/Examples/Cxx/TextAnalysis/PowerWeighting|Raise all elements in an array to a power]] || {{VTKDoxygenURL|vtkPowerWeighting}} ||
 
|-
 
| [[VTK/Examples/Cxx/Math/LeastSquares|Least Squares]] || vtkMath::SolveLeastSquares ||
 
|-
 
| [[VTK/Examples/Cxx/Math/HomogeneousLeastSquares|Homogeneous Least Squares]] || vtkMath::SolveHomogeneousLeastSquares ||
 
|-
 
| [[VTK/Examples/Cxx/Math/EigenSymmetric|Compute eigenvalues and eigenvectors of a symmetric matrix]] || vtkMath::Jacobi ||
 
|-
 
| [[VTK/Examples/Cxx/Math/MatrixTranspose|Matrix transpose]] || {{VTKDoxygenURL|vtkMatrix3x3}} ||
 
|-
 
| [[VTK/Examples/Cxx/Math/MatrixInverse|Matrix inverse]] || {{VTKDoxygenURL|vtkMatrix3x3}} ||
 
|-
 
| [[VTK/Examples/Cxx/Math/PerpendicularVector|Get a vector perpendicular to another vector]]|| vtkMath::Perpendiculars ||
 
|-
 
| [[VTK/Examples/Cxx/Math/VectorNorm|Get the lengths of an array of vectors]]|| {{VTKDoxygenURL|vtkVectorNorm}} ||
 
|-
 
| [[VTK/Examples/Cxx/Math/Interpolate1D|Interpolate 1-tuples (linear, spline-based)]]|| {{VTKDoxygenURL|vtkTupleInterpolator}} {{VTKDoxygenURL|vtkCardinalSpline}} {{VTKDoxygenURL|vtkKochanekSpline}} || A simple example demonstrating how functions defined by sparsely distributed supporting points can be interpolated at arbitrary positions.
 
|}
 
 
 
==Graphs==
 
{{VTKExamplesTable}}
 
|-
 
| [[VTK/Examples/Cxx/Graphs/AdjacencyMatrixToEdgeTable|Convert an adjacency matrix to an edge table]] || {{VTKDoxygenURL|vtkAdjacencyMatrixToEdgeTable}} ||
 
|-
 
| [[VTK/Examples/Cxx/Graphs/ShortestPath|Find the shortest path on a graph]] || {{VTKDoxygenURL|vtkDijkstraGraphGeodesicPath}} ||
 
|-
 
| [[VTK/Examples/Cxx/Graphs/ColorVertexLabels|Set the color of vertex labels]] || {{VTKDoxygenURL|vtkGraphLayoutView}}, {{VTKDoxygenURL|vtkRenderedGraphRepresentation}} ||
 
|-
 
| [[VTK/Examples/Cxx/Graphs/VertexSize|Set the size of vertices]] || {{VTKDoxygenURL|vtkGraphLayoutView}}, {{VTKDoxygenURL|vtkRenderedGraphRepresentation}} || Vertex size.
 
|-
 
| [[VTK/Examples/Cxx/Graphs/ScaleVertices|Size/scale vertices based on a data array]] || {{VTKDoxygenURL|vtkGraphLayoutView}}, {{VTKDoxygenURL|vtkRenderedGraphRepresentation}} ||
 
|-
 
| [[VTK/Examples/Cxx/Graphs/SelectedVerticesAndEdges |Get a list of selected vertices and edges]] || {{VTKDoxygenURL|vtkAnnotationLink}} ||
 
|-
 
| [[VTK/Examples/Cxx/Graphs/SelectedVerticesAndEdgesObserver |Get a list of selected vertices and edges using an observer of AnnotationChangedEvent]] || {{VTKDoxygenURL|vtkAnnotationLink}} ||
 
|-
 
| [[VTK/Examples/Cxx/InfoVis/GraphPoints|Manually set coordinates of vertices in a graph]] || vtkGraph::SetPoints, {{VTKDoxygenURL|vtkPassThroughLayoutStrategy}} ||
 
|-
 
| [[VTK/Examples/Cxx/InfoVis/MutableGraphHelper|Create either a vtkMutableDirectedGraph or vtkMutableUndirectedGraph]] || {{VTKDoxygenURL|vtkMutableGraphHelper}} ||
 
|-
 
| [[VTK/Examples/Cxx/Graphs/SideBySideGraphs|Display two graphs side by side]] || {{VTKDoxygenURL|vtkGraphLayoutView}} ||
 
|-
 
| [[VTK/Examples/Cxx/Graphs/AdjacentVertexIterator|Get all vertices connected to a specified vertex]] || {{VTKDoxygenURL|vtkAdjacentVertexIterator}} ||
 
|-
 
| [[VTK/Examples/Cxx/Graphs/EdgeWeights|Edge weights]] || vtkGraph::GetEdgeData::AddArray ||
 
|-
 
| [[VTK/Examples/Cxx/Graphs/IterateEdges|Iterate over edges]] || {{VTKDoxygenURL|vtkEdgeListIterator}} ||
 
|-
 
| [[VTK/Examples/Cxx/Graphs/InEdgeIterator|Iterate over edges incoming to a vertex]] || {{VTKDoxygenURL|vtkInEdgeIterator}} ||
 
|-
 
| [[VTK/Examples/Cxx/Graphs/OutEdgeIterator|Iterate over edges outgoing from a vertex]] || {{VTKDoxygenURL|vtkOutEdgeIterator}} ||
 
|-
 
| [[VTK/Examples/Cxx/Graphs/BFSTree|Breadth first search tree]] || {{VTKDoxygenURL|vtkBoostBreadthFirstSearchTree}} || Can also be used to convert a graph to a tree
 
|-
 
| [[VTK/Examples/Cxx/Graphs/BreadthFirstDistance|Distance from origin]] || {{VTKDoxygenURL|vtkBoostBreadthFirstSearch}} ||
 
|-
 
| [[VTK/Examples/Cxx/Graphs/ColorVerticesLookupTable|Color vertices]] || {{VTKDoxygenURL|vtkGraphLayoutView}} ||
 
|-
 
| [[VTK/Examples/Cxx/Graphs/ColorEdges|Color edges]] || {{VTKDoxygenURL|vtkGraphLayoutView}} ||
 
|-
 
| [[VTK/Examples/Cxx/Graphs/ConstructGraph|Construct a graph]] || {{VTKDoxygenURL|vtkMutableUndirectedGraph}} ||
 
|-
 
| [[VTK/Examples/Cxx/Graphs/ConstructTree|Construct a tree]] || {{VTKDoxygenURL|vtkTree}}, {{VTKDoxygenURL|vtkMutableDirectedGraph}}  ||
 
|-
 
| [[VTK/Examples/Cxx/Graphs/MinimumSpanningTree|Minimum spanning tree of a graph]] || {{VTKDoxygenURL|vtkBoostPrimMinimumSpanningTree}} ||
 
|-
 
| [[VTK/Examples/Cxx/Graphs/DepthFirstSearchIterator|Depth First Search iterator]] || {{VTKDoxygenURL|vtkTreeDFSIterator}} ||
 
|-
 
| [[VTK/Examples/Cxx/Graphs/BreadthFirstSearchIterator|Breadth First Search iterator]] || {{VTKDoxygenURL|vtkTreeBFSIterator}} ||
 
|-
 
| [[VTK/Examples/Cxx/Graphs/VisualizeGraph|Visualize a graph]] || {{VTKDoxygenURL|vtkGraphLayoutView}}, {{VTKDoxygenURL|vtkGraphLayoutStrategy}}, {{VTKDoxygenURL|vtkSimple2DLayoutStrategy}}||
 
|-
 
| [[VTK/Examples/Cxx/Graphs/LabelVerticesAndEdges|Label vertices and edges]] || vtkGraphLayoutView::SetEdgeLabelArrayName, vtkGraphLayoutView::SetVertexLabelArrayName||
 
|-
 
| [[VTK/Examples/Cxx/Graphs/ConnectedComponents|Find Connected Components]] || {{VTKDoxygenURL|vtkBoostConnectedComponents}} ||
 
|-
 
| [[VTK/Examples/Cxx/Graphs/GraphToPolyData|Convert a graph to a PolyData]] || {{VTKDoxygenURL|vtkGraphToPolyData}} ||
 
|-
 
| [[VTK/Examples/Cxx/Graphs/VisualizeDirectedGraph|Visualize a directed graph]] || {{VTKDoxygenURL|vtkGlyphSource2D}} ||
 
|-
 
| [[VTK/Examples/Cxx/Graphs/RandomGraphSource|Create a random graph]] || {{VTKDoxygenURL|vtkRandomGraphSource}} ||
 
|-
 
| [[VTK/Examples/Cxx/Graphs/DFSAnimation|Depth First Search Animation]] || {{VTKDoxygenURL|vtkTreeDFSIterator}} ||
 
|-
 
| [[VTK/Examples/Cxx/Graphs/RemoveIsolatedVertices|Remove vertices of degree 0 from a vtkGraph]] || {{VTKDoxygenURL|vtkRemoveIsolatedVertices}} ||
 
|}
 
 
 
===Graph Conversions===
 
{{VTKExamplesTable}}
 
|-
 
| [[VTK/Examples/Cxx/Graphs/Conversions/MutableDirectedGraphToDirectedGraph|vtkMutableDirectedGraph to vtkDirectedGraph]] || {{VTKDoxygenURL|vtkMutableDirectedGraph}}, {{VTKDoxygenURL|vtkDirectedGraph}} ||
 
|-
 
| [[VTK/Examples/Cxx/Graphs/Conversions/DirectedGraphToMutableDirectedGraph| vtkDirectedGraph to vtkMutableDirectedGraph]] || {{VTKDoxygenURL|vtkMutableDirectedGraph}}, {{VTKDoxygenURL|vtkDirectedGraph}} ||
 
|-
 
| [[VTK/Examples/Cxx/Graphs/Conversions/TreeToMutableDirectedGraph| vtkTree to vtkMutableDirectedGraph]] || {{VTKDoxygenURL|vtkMutableDirectedGraph}}, {{VTKDoxygenURL|vtkTree}} ||
 
 
 
|}
 
 
 
===Graph Conversions That Don't Work===
 
{{VTKExamplesTable}}
 
|-
 
| [[VTK/Examples/Cxx/Broken/Graphs/Conversions/MutableDirectedGraphToMutableUndirectedGraph|vtkMutableDirectedGraph to vtkMutableUndirectedGraph]] || {{VTKDoxygenURL|vtkMutableDirectedGraph}}, {{VTKDoxygenURL|vtkMutableUndirectedGraph}} ||
 
|-
 
| [[VTK/Examples/Cxx/Broken/Graphs/Conversions/MutableUndirectedGraphToMutableDirectedGraph|vtkMutableUndirectedGraph to vtkMutableDirectedGraph]] || {{VTKDoxygenURL|vtkMutableDirectedGraph}}, {{VTKDoxygenURL|vtkMutableUndirectedGraph}} ||
 
|-
 
| [[VTK/Examples/Cxx/Broken/Graphs/Conversions/TreeToMutableUndirectedGraph|vtkTree to vtkMutableUndirectedGraph]] || {{VTKDoxygenURL|vtkTree}}, {{VTKDoxygenURL|vtkMutableUndirectedGraph}} ||
 
|}
 
 
 
==Data Structures==
 
{{VTKExamplesTable}}
 
|-
 
| [[VTK/Examples/Cxx/PolyData/AttachAttributes|Attach attributes]] || {{VTKDoxygenURL|vtkInformation}} || Attach attributes to a VTK array
 
|-
 
| [[VTK/Examples/Cxx/PolyData/PointLocator_Radius|Find all points within a radius of a specified point]] || {{VTKDoxygenURL|vtkPointLocator}} ||
 
|-
 
| [[VTK/Examples/Cxx/PolyData/CellLocatorVisualization|Visualization of the tree of a vtkCellLocator]] || {{VTKDoxygenURL|vtkCellLocator}} ||
 
|-
 
| [[VTK/Examples/Cxx/PolyData/PointLocatorVisualization|Visualization of the tree of a vtkPointLocator]] || {{VTKDoxygenURL|vtkPointLocator}} ||
 
|-
 
| [[VTK/Examples/Cxx/PolyData/PointLocator|Efficient 3D point query]] || {{VTKDoxygenURL|vtkPointLocator}} ||
 
|-
 
| [[VTK/Examples/Cxx/PolyData/CellLocator|Efficient 3D cell query]] || {{VTKDoxygenURL|vtkCellLocator}} ||
 
|-
 
| [[VTK/Examples/Cxx/PolyData/CellTreeLocator|Points inside an object using vtkCellTreeLocator]] || {{VTKDoxygenURL|vtkCellTreeLocator}} ||
 
|}
 
 
 
===Timing Demonstrations===
 
{{VTKExamplesTable}}
 
|-
 
| [[VTK/Examples/Cxx/DataStructures/OctreeTimingDemo|Octree timing demo]] || {{VTKDoxygenURL|vtkOctreePointLocator}} || Plot the runtime vs MaxPointsPerRegion
 
|-
 
| [[VTK/Examples/Cxx/DataStructures/KDTreeTimingDemo|KDTree timing demo]] || {{VTKDoxygenURL|vtkKdTreePointLocator}} || Plot the runtime vs MaxLevel (doesn't seem correct)
 
|-
 
| [[VTK/Examples/Cxx/DataStructures/OBBTreeTimingDemo|OBBTree timing demo]] || {{VTKDoxygenURL|vtkOBBTree}} || Plot the runtime vs MaxLevel
 
|-
 
| [[VTK/Examples/Cxx/DataStructures/ModifiedBSPTreeTimingDemo|ModifiedBSPTree timing demo]] || {{VTKDoxygenURL|vtkModifiedBSPTree}} || Plot the runtime vs MaxLevel
 
|}
 
 
 
===KD-Tree===
 
 
 
{{VTKExamplesTable}}
 
|-
 
| [[VTK/Examples/Cxx/DataStructures/vtkKdTree_BuildLocatorFromPoints_ClosestPoint|vtkKdTree_BuildLocatorFromPoints]] || {{VTKDoxygenURL|vtkKdTree}} ||
 
|-
 
| [[VTK/Examples/Cxx/DataStructures/vtkKdTree_BuildLocatorFromPoints_ClosestKPoints|vtkKdTree_BuildLocatorFromPoints_ClosestKPoints]] || {{VTKDoxygenURL|vtkKdTree}} ||
 
|-
 
| [[VTK/Examples/Cxx/DataStructures/KDTree_AccessPoints|Access the points of a KDTree]] || {{VTKDoxygenURL|vtkKdTree}} ||
 
|-
 
| [[VTK/Examples/Cxx/DataStructures/KdTreePointLocator/ClosestPoint|Find the closest point to a query point]] || {{VTKDoxygenURL|vtkKdTreePointLocator}} ||
 
|-
 
| [[VTK/Examples/Cxx/DataStructures/KdTreePointLocator/ClosestNPoints|Find the closest N points to a query point]] || {{VTKDoxygenURL|vtkKdTreePointLocator}} ||
 
|-
 
| [[VTK/Examples/Cxx/DataStructures/VisualizeKDTree|Visualize levels of the tree]]|| {{VTKDoxygenURL|vtkKdTreePointLocator}} ||
 
|-
 
| [[VTK/Examples/Cxx/DataStructures/KDTree/FindPointsWithinRadius|Find points within a specified radius of  a query point]]|| {{VTKDoxygenURL|vtkKdTreePointLocator}} ||
 
|-
 
| [[VTK/Examples/Cxx/DataStructures/DataStructureComparison|Data structure comparison]] || {{VTKDoxygenURL|vtkKdTree}}, {{VTKDoxygenURL|vtkOBBTree}}, {{VTKDoxygenURL|vtkOctreePointLocator}}, {{VTKDoxygenURL|vtkModifiedBSPTree}} || Illustrates, side by side, the differences between several spatial data structures
 
|}
 
 
 
===Oriented Bounding Box (OBB) Tree===
 
 
 
{{VTKExamplesTable}}
 
|-
 
| [[VTK/Examples/Cxx/DataStructures/OBBTree_IntersectWithLine|Intersect a line with a vtkOBBTree]] || {{VTKDoxygenURL|vtkOBBTree}} ||
 
|-
 
| [[VTK/Examples/Cxx/DataStructures/OBBTreeExtractCells|Intersect a line with an OBB Tree and display all intersected cells]] || {{VTKDoxygenURL|vtkOBBTree}} ||
 
|-
 
| [[VTK/Examples/Cxx/DataStructures/VisualizeOBBTree|Visualize levels of the tree]]|| {{VTKDoxygenURL|vtkOBBTree}} ||
 
|}
 
 
 
===Octree===
 
 
 
{{VTKExamplesTable}}
 
|-
 
| [[VTK/Examples/Cxx/DataStructures/Octree/BuildTree|Create an octree]] || {{VTKDoxygenURL|vtkOctreePointLocator}} ||
 
|-
 
| [[VTK/Examples/Cxx/DataStructures/Octree/ClosestPoint|Find the closest point to a query point]] || {{VTKDoxygenURL|vtkOctreePointLocator}} ||
 
|-
 
| [[VTK/Examples/Cxx/DataStructures/Octree/KClosestPoints|Find the K closest points to a query point]] || {{VTKDoxygenURL|vtkOctreePointLocator}} ||
 
|-
 
| [[VTK/Examples/Cxx/DataStructures/Octree/FindPointsWithinRadius|Find the points within a sphere of specified radius to a query point]] || {{VTKDoxygenURL|vtkOctreePointLocator}} ||
 
|-
 
| [[VTK/Examples/Cxx/DataStructures/OctreeVisualize|Visualize levels of the tree]] ||{{VTKDoxygenURL|vtkOctreePointLocator}} ||
 
|-
 
| [[VTK/Examples/Cxx/DataStructures/IncrementalOctreePointLocator | Insert points into an octree without rebuilding it]] ||{{VTKDoxygenURL|vtkIncrementalOctreePointLocator}} ||
 
|}
 
 
 
===Modified BSP Tree===
 
 
 
{{VTKExamplesTable}}
 
|-
 
| [[VTK/Examples/Cxx/DataStructures/ModifiedBSPTreeIntersectWithLine|Intersect a line with a modified BSP Tree]] || {{VTKDoxygenURL|vtkModifiedBSPTree}} ||
 
|-
 
| [[VTK/Examples/Cxx/DataStructures/ModifiedBSPTreeExtractCells|Intersect a line with a modified BSP Tree and display all intersected cells]] || {{VTKDoxygenURL|vtkModifiedBSPTree}} ||
 
|-
 
| [[VTK/Examples/Cxx/DataStructures/ModifiedBSPTree/VisualizeModifiedBSPTree|Visualize levels of the tree]] || {{VTKDoxygenURL|vtkModifiedBSPTree}} ||
 
|}
 
 
 
==VTK Concepts==
 
 
 
{{VTKExamplesTable}}
 
|-
 
| [[VTK/Examples/Cxx/VTKConcepts/Scalars|Attach a scalar value to each point (PointData) or cell (CellData) in a data set]] || ||
 
|}
 
 
 
==Lighting==
 
 
 
{{VTKExamplesTable}}
 
|-
 
| [[VTK/Examples/Cxx/Visualization/Shadows|Create shadows]] || {{VTKDoxygenURL|vtkShadowMapPass}} ||
 
|-
 
| [[VTK/Examples/Cxx/Lighting/Light|Add a directional light to a scene]] || {{VTKDoxygenURL|vtkLight}} ||
 
|-
 
| [[VTK/Examples/Cxx/Lighting/LightActor|Display the location and direction of a light]] || {{VTKDoxygenURL|vtkLightActor}} ||
 
|}
 
 
 
==Visualization==
 
See [[VTK/Tutorials/VTK_Terminology| this tutorial]] for a brief explanation of the VTK terminology of mappers, actors, etc.
 
 
 
{{VTKExamplesTable}}
 
|-
 
| [[VTK/Examples/Cxx/WishList/Visualization/LayeredRenderers|Layered renderers]] || {{VTKDoxygenURL|vtkRenderer}} ||
 
|-
 
| [[VTK/Examples/Cxx/Visualization/ScalarVisibility|Switch between coloring the actor and coloring the data]] || {{VTKDoxygenURL|vtkDataSetMapper}} || ScalarVisibility, color
 
|-
 
| [[VTK/Examples/Cxx/Visualization/ImageMapper|Display an image in 2D]] || {{VTKDoxygenURL|vtkImageMapper}} ||
 
|-
 
| [[VTK/Examples/Cxx/Visualization/BackgroundTexture|Use a texture for the background of a vtkRenderer]] || {{VTKDoxygenURL|vtkRenderer}}, {{VTKDoxygenURL|vtkTexture}} || Background texture, BackgroundTexture
 
|-
 
| [[VTK/Examples/Cxx/WishList/Visualization/VectorField |Visualize a vector field]] || {{VTKDoxygenURL|vtkGlyph3D}} ||
 
|-
 
| [[VTK/Examples/Cxx/Visualization/ImageOrientation |Orientation of the view of an image]] || {{VTKDoxygenURL|vtkInteractorStyleImage}} ||
 
|-
 
| [[VTK/Examples/Cxx/Visualization/CaptionActor2D|Draw a caption/bubble pointing to a particular point]] || {{VTKDoxygenURL|CaptionActor2D}} ||
 
|-
 
| [[VTK/Examples/Cxx/Visualization/ImageOrder|Determine the display order of a stack of images]] || {{VTKDoxygenURL|vtkRenderer}} ||
 
|-
 
| [[VTK/Examples/Cxx/Visualization/RenderPassExistingContext|Render into an existing OpenGL Context]] || {{VTKDoxygenURL|vtkRenderPass}},{{VTKDoxygenURL|vtkVolumetricPass}} ||
 
|-
 
| [[VTK/Examples/Cxx/Visualization/ImageTransparency|Set transparency of image pixels]] || {{VTKDoxygenURL|vtkImageData}}||
 
|-
 
| [[VTK/Examples/Cxx/Visualization/OrientedGlyphs|Create oriented glyphs from vector data]] || {{VTKDoxygenURL||vtkGlyph3D}}||
 
|-
 
| [[VTK/Examples/Cxx/Visualization/HedgeHog|Create oriented lines (hedgehogs) from vector data]] || {{VTKDoxygenURL|vtkHedgeHog}}, {{VTKDoxygenURL|vtkStructuredGrid}} ||
 
|-
 
| [[VTK/Examples/Cxx/Visualization/LineWidth|Change the width/thickness of lines in an actor]] || {{VTKDoxygenURL|vtkActor}}, {{VTKDoxygenURL|vtkProperty}} ||
 
|-
 
| [[VTK/Examples/Cxx/Visualization/CursorShape|Change the shape of the cursor]] || {{VTKDoxygenURL|vtkRenderWindow}} ||
 
|-
 
| [[VTK/Examples/Cxx/Visualization/SceneBounds|Get the bounds of the whole scene]] || {{VTKDoxygenURL|vtkRenderer}} ||
 
|-
 
| [[VTK/Examples/Cxx/Visualization/FastSplatter|Convolve a splat image with every point in an input image]] || {{VTKDoxygenURL|vtkFastSplatter}} ||
 
|-
 
| [[VTK/Examples/Cxx/VisualizationAlgorithms/TubesWithVaryingRadiusAndColors|Create tubes with varying radius and colors]] || {{VTKDoxygenURL|vtkTubeFilter}} ||
 
|-
 
| [[VTK/Examples/Cxx/VisualizationAlgorithms/TubesFromSplines|Create tubes from interpolated points and scalars]] || {{VTKDoxygenURL|vtkTubeFilter}}, {{VTKDoxygenURL|vtkParametricFunctionSource}}  {{VTKDoxygenURL|vtkTupleInterpolator}}||
 
|-
 
| [[VTK/Examples/Cxx/Filters/vtkGlyph2D | vtkGlyph2D]] || {{VTKDoxygenURL|vtkGlyph2D}}||
 
|-
 
| [[VTK/Examples/Cxx/Filters/vtkGlyph3D | vtkGlyph3D]] || {{VTKDoxygenURL|vtkGlyph3D}}||
 
|-
 
| [[VTK/Examples/Cxx/Filters/vtkVertexGlyphFilter | Add a vertex to each point]] || {{VTKDoxygenURL|vtkVertexGlyphFilter}} ||
 
|-
 
| [[VTK/Examples/Cxx/VisualizationAlgorithms/vtkCutter|vtkCutter]] || {{VTKDoxygenURL|vtkCutter}} ||
 
|-
 
| [[VTK/Examples/Cxx/Visualization/QuadraticSurface|Display a quadratic surface]] || {{VTKDoxygenURL|vtkQuadric}} ||
 
|-
 
| [[VTK/Examples/Cxx/Visualization/BackfaceCulling| Backface culling]] || vtkActor::GetProperty::BackfaceCullingOn ||
 
|-
 
| [[VTK/Examples/Cxx/Visualization/BackgroundColor | Background color]] || vtkRenderer::SetBackground ||
 
|-
 
| [[VTK/Examples/Cxx/Visualization/BackgroundGradient | Background gradient]] || vtkRenderer::GradientBackgroundOn, vtkRenderer::Setbackground2 ||
 
|-
 
| [[VTK/Examples/Cxx/Visualization/CameraActor | CameraActor]] || {{VTKDoxygenURL|vtkCameraActor}} || Visualize a camera (frustum) in a scene.
 
|-
 
| [[VTK/Examples/Cxx/Visualization/ClipArt | Generate 3D clip art from an image]] || {{VTKDoxygenURL|vtkTextureMapToPlane}} ||
 
|-
 
| [[VTK/Examples/Cxx/Visualization/CloseWindow|Close a render window]] || vtkRenderWindowInteractor::TerminateApp, vtkRenderWindow::Finalize ||
 
|-
 
| [[VTK/Examples/Cxx/Visualization/ColorAnActor | Color an Actor]] || vtkActor::GetProperty::SetColor ||
 
|-
 
| [[VTK/Examples/Cxx/Visualization/ColorActorEdges | Color the edges of an Actor]] || vtkActor::GetProperty::SetEdgeColor ||
 
|-
 
| [[VTK/Examples/Cxx/Visualization/ColorGlyphs|Color glyphs]] || {{VTKDoxygenURL|vtkGlyph3D}} vtkGlyph3D::SetColorModeToColorByScalar ||
 
|-
 
| [[VTK/Examples/Cxx/Visualization/CornerAnnotation| Corner annotation]] || {{VTKDoxygenURL|vtkCornerAnnotation}} || Write text in the corners of a window.
 
|-
 
| [[VTK/Examples/Cxx/Visualization/CorrectlyRenderingTranslucentGeometry|Correctly Rendering Translucent Geometry]] || {{VTKDoxygenURL|vtkDepthSortPolyData}} ||
 
|-
 
| [[VTK/Examples/Cxx/Visualization/CubeAxesActor|Display three orthogonal axes with labels]] || {{VTKDoxygenURL|vtkCubeAxesActor}} ||
 
|-
 
| [[VTK/Examples/Cxx/Visualization/Cursor3D|vtkCursor3D]] || {{VTKDoxygenURL|vtkCursor3D}} ||
 
|-
 
| [[VTK/Examples/Cxx/Visualization/Arbitrary3DCursor|Track a 3D cursor]] || {{VTKDoxygenURL|vtkPointWidget}} ||
 
|-
 
| [[VTK/Examples/Cxx/Visualization/DisplayCoordinateAxes|Display coordinate axes]] || {{VTKDoxygenURL|vtkOrientationMarkerWidget}} ||
 
|-
 
| [[VTK/Examples/Cxx/Visualization/DisplayText|Display Text]] || {{VTKDoxygenURL|vtkTextActor}}, {{VTKDoxygenURL|vtkTextProperty}} ||
 
|-
 
| [[VTK/Examples/Cxx/Views/RenderView|A little bit easier rendering]] || {{VTKDoxygenURL|vtkRenderView}} ||
 
|-
 
| [[VTK/Examples/Cxx/Visualization/FlatShading | FlatShading]] || vtkActor::GetProperty::SetInterpolationToFlat ||
 
|-
 
| [[VTK/Examples/Cxx/Visualization/Follower | Draw text that stays right side up]] || {{VTKDoxygenURL|vtkFollower}} ||
 
|-
 
| [[VTK/Examples/Cxx/Visualization/HideActor|Hide an actor]] || {{VTKDoxygenURL|vtkPropCollection}}, vtkProp::VisibilityOff || visible
 
|-
 
| [[VTK/Examples/Cxx/Visualization/HideAllActors|Hide all actors]] || vtkRenderer::RemoveAllViewProps ||
 
|-
 
| [[VTK/Examples/Cxx/Visualization/LODProp3D | Level of detail rendering]] || {{VTKDoxygenURL|vtkLODProp3D}} ||
 
|-
 
| [[VTK/Examples/Cxx/Visualization/LabelContours|Label Contours]] || {{VTKDoxygenURL|vtkLabeledDataMapper}} ||
 
|-
 
| [[VTK/Examples/Cxx/Visualization/LabelPlacementMapper|Label points]] || {{VTKDoxygenURL|vtkPointSetToLabelHierarchy}}, {{VTKDoxygenURL|vtkLabelPlacementMapper}} || Display a non-overlapping text label at each point.
 
|-
 
| [[VTK/Examples/Cxx/Visualization/LabeledDataMapper|Display the point ID at each point]] || {{VTKDoxygenURL|vtkLabeledDataMapper}} ||
 
|-
 
| [[VTK/Examples/Cxx/Visualization/Legend | Legend]] || {{VTKDoxygenURL|vtkLegendBoxActor}} ||
 
|-
 
| [[VTK/Examples/Cxx/Visualization/LegendScaleActor|Display the scale of a scene]] || {{VTKDoxygenURL|vtkLegendScaleActor}} ||
 
|-
 
| [[VTK/Examples/Cxx/Visualization/MovableAxes | Movable axes]] || {{VTKDoxygenURL|vtkFollower}}, {{VTKDoxygenURL|vtkAxesActor}}, {{VTKDoxygenURL|vtkAssembly}} ||
 
|-
 
| [[VTK/Examples/Cxx/Visualization/MoveActor|Moving an Actor]] || {{VTKDoxygenURL|vtkInteractorStyleTrackballActor}} ||
 
|-
 
| [[VTK/Examples/Cxx/Visualization/MoveCamera|Moving the Camera]] || {{VTKDoxygenURL|vtkInteractorStyleTrackballCamera}} ||
 
|-
 
| [[VTK/Examples/Cxx/Visualization/MultipleActors|Multiple Actors]] || {{VTKDoxygenURL|vtkActor}} ||
 
|-
 
| [[VTK/Examples/Cxx/Visualization/NamedColors | Named colors]] || {{VTKDoxygenURL|vtkNamedColors}} || Demonstrates how to use the vtkNamedColor class
 
|-
 
| [[VTK/Examples/Cxx/Visualization/NoShading | NoShading]] || vtkActor::GetProperty::SetAmbient, vtkActor::GetProperty::SetDiffuse, vtkActor::GetProperty::SetSpecular ||
 
|-
 
| [[VTK/Examples/Cxx/Visualization/Opacity|Opacity]] || vtkActor::GetProperty::SetOpacity || Transparency, transparent.
 
|-
 
| [[VTK/Examples/Cxx/Visualization/PointSize | PointSize]] || vtkActor::GetProperty::SetPointSize ||
 
|-
 
| [[VTK/Examples/Cxx/Visualization/PolyDataDepthSorting|Poly Data Depth Sorting]] || {{VTKDoxygenURL|vtkDepthSortPolyData}} ||
 
|-
 
| [[VTK/Examples/Cxx/Visualization/QuadricLODActor|Automatic level of detail adjustment]] || {{VTKDoxygenURL|vtkQuadricLODActor}} || Level of detail adjustment.
 
|-
 
| [[VTK/Examples/Cxx/Visualization/RenderLargeImage|Render a large image, larger than a window]] || {{VTKDoxygenURL|vtkRenderLargeImage}} ||
 
|-
 
| [[VTK/Examples/Cxx/Visualization/RotateActor|Rotate an Actor]] || vtkActor::GetMatrix ||
 
|-
 
| [[VTK/Examples/Cxx/Visualization/ScalarBarActor|ScalarBarActor]] || {{VTKDoxygenURL|vtkScalarBarActor}} || Display a color bar.
 
|-
 
| [[VTK/Examples/Cxx/Visualization/ScaleGlyphs|Scale glyphs]] || {{VTKDoxygenURL|vtkGlyph3D}} vtkGlyph3D::SetScaleModeToScaleByScalar ||
 
|-
 
| [[VTK/Examples/Cxx/Visualization/SelectWindowRegion|Select a region of a window]] ||{{VTKDoxygenURL|vtkInteractorStyleRubberBand2D}} ||
 
|-
 
| [[VTK/Examples/Cxx/Visualization/StreamLines|Stream Lines]] || {{VTKDoxygenURL|vtkStreamLine}} ||
 
|-
 
| [[VTK/Examples/Cxx/Visualization/TextSource|Display text]] || {{VTKDoxygenURL|vtkTextSource}} ||
 
|-
 
| [[VTK/Examples/Cxx/Visualization/TextureMapImageData | Texture map an ImageData]] || {{VTKDoxygenURL|vtkImageCanvasSource2D}} ||
 
|-
 
| [[VTK/Examples/Cxx/Visualization/TextureMapPlane|Texture map a plane]] || {{VTKDoxygenURL|vtkTextureMapToPlane}} ||
 
|-
 
| [[VTK/Examples/Cxx/Visualization/TextureMapQuad|Texture map a quad]] || {{VTKDoxygenURL|vtkPolygon}}, vtkPolyData::GetPointData::SetTCoords ||
 
|-
 
| [[VTK/Examples/Cxx/Visualization/TransformActor|Transform an Actor]] || vtkActor::SetUserTransform ||
 
|-
 
| [[VTK/Examples/Cxx/Visualization/TransformActorCollection|Transform an actor collection]] || {{VTKDoxygenURL|vtkActorCollection}} ||
 
|-
 
| [[VTK/Examples/Cxx/Visualization/VectorOfActors|Multiple Actors in a Vector]] || {{VTKDoxygenURL|vtkActor}} ||
 
|-
 
| [[VTK/Examples/Cxx/Visualization/VectorText|Display high resolution text]] || {{VTKDoxygenURL|vtkVectorText}} ||
 
|-
 
| [[VTK/Examples/Cxx/Visualization/Visualize2DPoints|Visualize a 2D Set of Points]] || {{VTKDoxygenURL|vtkPolyDataMapper2D}}, {{VTKDoxygenURL|vtkProperty2D}} ||
 
|-
 
| [[VTK/Examples/Cxx/Visualization/VisualizeImageData|Visualize the points of an ImageData]] || {{VTKDoxygenURL|vtkDataSetMapper}} ||
 
|-
 
| [[VTK/Examples/Cxx/Visualization/VisualizeVTP|Visualize a VTP File]] || {{VTKDoxygenURL|vtkXMLPolyDataReader}}, {{VTKDoxygenURL|vtkPolyDataMapper}} ||
 
|-
 
| [[VTK/Examples/Cxx/Visualization/WindowSize | Change the size of a window]] || vtkRenderWindow:SetSize ||
 
|-
 
| [[VTK/Examples/Cxx/Visualization/WindowTitle | Change the title of a window]] || vtkRenderWindow::SetWindowName ||
 
|-
 
| [[VTK/Examples/Cxx/Visualization/Wireframe|Wireframe]] || vtkActor::GetProperty::SetRepresentationToWireframe ||
 
|-
 
| [[VTK/Examples/Cxx/Visualization/vtkCamera|Positioning and aiming the camera]] || {{VTKDoxygenURL|vtkCamera}} ||
 
|-
 
| [[VTK/Examples/Cxx/Visualization/DisplayQuadraticSurfaces|Display Quadratic Surfaces]] || {{VTKDoxygenURL|vtkQuadric}}, {{VTKDoxygenURL|vtkSampleFunction}}, {{VTKDoxygenURL|vtkContourFilter}} ||
 
|-
 
| [[VTK/Examples/Cxx/Visualization/Glyph3DMapper|Glyph3DMapper]] || {{VTKDoxygenURL|vtkGlyph3DMapper}} ||
 
|-
 
| [[VTK/Examples/Cxx/Visualization/DistanceToCamera | DistanceToCamera]] || {{VTKDoxygenURL|vtkDistanceToCamera}} ||
 
|-
 
| [[VTK/Examples/Cxx/Visualization/ProgrammableGlyphFilter|Generate a custom glyph at each point]] || {{VTKDoxygenURL|vtkProgrammableGlyphFilter}} ||
 
|-
 
| [[VTK/Examples/Cxx/Visualization/CurvedReformation | Sample a volume with a curved surface]] || {{VTKDoxygenURL|vtkProbeFilter}}||In medical imaging, this is often called curved multi planar reformation
 
|-
 
| [[VTK/Examples/Cxx/Visualization/IsosurfaceSampling | Sample a volume with an isosurface]] || {{VTKDoxygenURL|vtkProbeFilter}}||Demonstrates how to create point data on an isosurface.
 
|-
 
| [[VTK/Examples/Cxx/Visualization/ReverseAccess | Accessing the source of an actor reversely]] || {{VTKDoxygenURL|vtkActor}}||Demonstrates how to access the source (e.g. vtkSphereSource) of an actor reversely
 
|-
 
| [[VTK/Examples/Cxx/Visualization/RandomProbe| Probe a data set with random points]] || {{VTKDoxygenURL|vtkProbeFilter}}||Demonstrates how to probe a dataset with random points and select points inside the data set
 
|-
 
| [[VTK/Examples/Visualization/TensorGlyph|vtkTensorGlyph]] || {{VTKDoxygenURL|vtkTensorGlyph}} || Draw a rotated/scaled glyph at each point.
 
|}
 
 
 
==Volume Rendering==
 
 
 
{{VTKExamplesTable}}
 
|-
 
| [[VTK/Examples/Cxx/VolumeRendering/HAVSVolumeMapper|HAVS]] || {{VTKDoxygenURL|vtkHAVSVolumeMapper}} ||
 
|-
 
| [[VTK/Examples/Cxx/VolumeRendering/SmartVolumeMapper|Smart volume mapper]] || {{VTKDoxygenURL|vtkSmartVolumeMapper}} ||
 
|-
 
| [[VTK/Examples/Cxx/VolumeRendering/MinIntensityRendering|Min intensity rendering]] || {{VTKDoxygenURL|vtkFixedPointVolumeRayCastMapper}} ||
 
|-
 
| [[VTK/Examples/Cxx/VolumeRendering/itkVtkImageConvert|ITK->VTK conversion]] ||  || Conversion maintaining DICOM orientation and position
 
|}
 
 
 
==User Interaction==
 
{{VTKExamplesTable}}
 
|-
 
| [[VTK/Examples/Cxx/Interaction/Game|Move a cube into a sphere]] || {{VTKDoxygenURL|vtkInteractorStyleTrackballActor}} || Snap
 
|-
 
| [[VTK/Examples/Cxx/Interaction/UserEvent|Create, invoke, and handle a custom event]] ||  || Simple observer, emit
 
|-
 
| [[VTK/Examples/Cxx/Interaction/ObserverMemberFunction|Handle events in class member functions]] ||  || Set observers to be class member functions.
 
|-
 
| [[VTK/Examples/Cxx/Interaction/MoveAVertex|Click and drag a vertex of a vtkPolyData]] || {{VTKDoxygenURL|vtkPointPicker}} ||
 
|-
 
| [[VTK/Examples/Cxx/Interaction/MoveAVertexUnstructuredGrid|Click and drag a vertex of a vtkUnstructuredGrid]] || {{VTKDoxygenURL|vtkPointPicker}} ||
 
|-
 
| [[VTK/Examples/Cxx/Interaction/ClientData|Give an observer access to an object (via ClientData)]] || {{VTKDoxygenURL|vtkCommand}} ||
 
|-
 
| [[VTK/Examples/Cxx/Interaction/CallData|Pass an observer a value (via CallData)]] || {{VTKDoxygenURL|vtkCommand}} ||
 
|-
 
| [[VTK/Examples/Cxx/Interaction/MoveAGlyph|Drag a glyph around]] || {{VTKDoxygenURL|vtkGlyph3D}} ||
 
|-
 
| [[VTK/Examples/Cxx/Interaction/Picking|Picking]] || {{VTKDoxygenURL|vtkPropPicker}} || Get the world coordinate of the mouse click (if you clicked an actor)
 
|-
 
| [[VTK/Examples/Cxx/Interaction/PickableOff|Disallow interaction with a specific actor]] || {{VTKDoxygenURL|vtkActor}}::PickableOff ||
 
|-
 
| [[VTK/Examples/Cxx/Interaction/Assembly|Assembly]] || {{VTKDoxygenURL|vtkAssembly}} || Combine actors into an assembly.
 
|-
 
| [[VTK/Examples/Cxx/Interaction/DoubleClick|Catch a double click]] || {{VTKDoxygenURL|vtkInteractorStyleTrackballCamera}} ||
 
|-
 
| [[VTK/Examples/Cxx/Interaction/ImageClip|vtkImageClip]] || {{VTKDoxygenURL|vtkImageClip}} || Demonstrates how to interactively select and display a region of an image.
 
|-
 
| [[VTK/Examples/Cxx/Interaction/ImageRegion|Select a region of an image]] || {{VTKDoxygenURL|vtkCommand}} ||
 
|-
 
| [[VTK/Examples/Cxx/Interaction/InteractorStyleTerrain|Terrain mode]] || {{VTKDoxygenURL|vtkInteractorStyleTerrain}} ||
 
|-
 
| [[VTK/Examples/Cxx/Interaction/KeypressEvents|Handle keypress events]] || {{VTKDoxygenURL|vtkInteractorStyleTrackballCamera}} ||
 
|-
 
| [[VTK/Examples/Cxx/Interaction/KeypressObserver | Handle keypress events (lightweight)]] || {{VTKDoxygenURL|vtkCallbackCommand}} || This uses a callback function rather than a derived interactor class.
 
|-
 
| [[VTK/Examples/Cxx/Interaction/InteractorStyleUser|InteractorStyleUser]] || {{VTKDoxygenURL|vtkInteractorStyleUser}} || Create a completely custom interactor style (no default functionality is provided)
 
|-
 
| [[VTK/Examples/Cxx/Interaction/MouseEvents | Handle mouse events]] || {{VTKDoxygenURL|vtkInteractorStyleTrackballCamera}} || Subclass the interactor style.
 
|-
 
| [[VTK/Examples/Cxx/Interaction/MouseEventsObserver | Handle mouse events (light weight)]] || {{VTKDoxygenURL|vtkCallbackCommand}} || Use an observer.
 
|-
 
| [[VTK/Examples/Cxx/Interaction/PointPicker|Get the coordinates of the closest point in the data set to the mouse click]] || {{VTKDoxygenURL|vtkPointPicker}} ||
 
|-
 
| [[VTK/Examples/Cxx/Interaction/RubberBand2DObserver|RubberBand2D Observer]] || {{VTKDoxygenURL|vtkInteractorStyleRubberBand2D}} ||
 
|-
 
| [[VTK/Examples/Cxx/Interaction/RubberBand2D|RubberBand2D]] || {{VTKDoxygenURL|vtkInteractorStyleRubberBand2D}} ||
 
|-
 
| [[VTK/Examples/Cxx/Interaction/RubberBand3D|RubberBand3D]] || {{VTKDoxygenURL|vtkInteractorStyleRubberBand3D}} ||
 
|-
 
| [[VTK/Examples/Cxx/Interaction/RubberBandPick|RubberBandPick]] || {{VTKDoxygenURL|vtkInteractorStyleRubberBandPick}} ||
 
|-
 
| [[VTK/Examples/Cxx/Interaction/RubberBandZoom|RubberBandZoom]] || {{VTKDoxygenURL|vtkInteractorStyleRubberBandZoom}} ||
 
|-
 
| [[VTK/Examples/Cxx/Interaction/SelectAnActor|Select an actor]] || {{VTKDoxygenURL|vtkPropPicker}} ||
 
|-
 
| [[VTK/Examples/Cxx/Interaction/ShiftAndControl|Check if shift or control is being held]] || vtkRenderWindowInteractor::GetControlKey() || Hold/holding down a key
 
|-
 
| [[VTK/Examples/Cxx/Interaction/StyleSwitch|Choose between multiple interaction modes]] || {{VTKDoxygenURL|vtkInteractorStyleSwitch}} ||
 
|-
 
| [[VTK/Examples/Cxx/Interaction/TrackballActor|Trackball actor mode]] || {{VTKDoxygenURL|vtkInteractorStyleTrackballActor}} ||
 
|-
 
| [[VTK/Examples/Cxx/Interaction/TrackballCamera|Trackball camera mode]] || {{VTKDoxygenURL|vtkInteractorStyleTrackballCamera}} ||
 
|-
 
| [[VTK/Examples/Cxx/Interaction/WorldPointPicker|Get world coordinates of mouse click]] || {{VTKDoxygenURL|vtkWorldPointPicker}} ||
 
|-
 
| [[VTK/Examples/Cxx/Picking/CellPicking|Cell Picking]] || {{VTKDoxygenURL|vtkCellPicker}} || select cell, click cell
 
|-
 
| [[VTK/Examples/Cxx/Picking/AreaPicking|Area Picking]] || {{VTKDoxygenURL|vtkAreaPicker}} ||
 
|-
 
| [[VTK/Examples/Cxx/Picking/HighlightSelectedPoints|Highlight Selected Points]] || {{VTKDoxygenURL|vtkExtractGeometry}} ||
 
|-
 
| [[VTK/Examples/Cxx/Picking/HighlightSelection|Highlight selection]] || {{VTKDoxygenURL|vtkExtractPolyDataGeometry}} ||
 
|}
 
 
 
==Working with Images==
 
{{VTKExamplesTable}}
 
|-
 
| [[VTK/Examples/Cxx/Images/ImageExport |Export an image to a C array]] || {{VTKDoxygenURL|vtkImageExport}} || c-style
 
|-
 
| [[VTK/Examples/Cxx/Images/ImageImport |Import an image from a C array]] || {{VTKDoxygenURL|vtkImageImport}} || c-style
 
|-
 
| [[VTK/Examples/Cxx/Images/ImageMedian3D|Median filter a 3d or 2d image]] || {{VTKDoxygenURL|vtkImageMedian3D}} || Median filter
 
|-
 
| [[VTK/Examples/Cxx/Images/ImageRFFT|Inverse FFT]] || {{VTKDoxygenURL|vtkImageRFFT}} ||
 
|-
 
| [[VTK/Examples/Cxx/Images/ImageIdealHighPass|High pass filter an image]] || {{VTKDoxygenURL|vtkImageIdealHighPass}} ||
 
|-
 
| [[VTK/Examples/Cxx/Images/ImageIslandRemoval2D|Remove small patches from an image]] || {{VTKDoxygenURL|vtkImageIslandRemoval2D}} ||
 
|-
 
| [[VTK/Examples/Cxx/Images/FillWindow|Setup the camera to fill the window with an image]] || {{VTKDoxygenURL|vtkCamera}} || Fit image
 
|-
 
| [[VTK/Examples/Cxx/Images/ImageShiftScale|Shift and scale an image]] || {{VTKDoxygenURL|vtkImageShiftScale}} ||
 
|-
 
| [[VTK/Examples/Cxx/Images/ImageStencil|Copy one image into another image]] || {{VTKDoxygenURL|vtkImageStencil}}, {{VTKDoxygenURL|vtkImageToImageStencil}} ||
 
|-
 
| [[VTK/Examples/Cxx/Images/ImageStack|Display layers of images]] || {{VTKDoxygenURL|vtkImageStack}} ||
 
|-
 
| [[VTK/Examples/Cxx/Images/BorderPixelSize|Set the size of border pixels]] || {{VTKDoxygenURL|vtkImageSliceMapper}} ||
 
|-
 
| [[VTK/Examples/Cxx/Images/Interpolation|Set the interpolation type for the display of an image]] || {{VTKDoxygenURL|vtkImageSlice}}, {{VTKDoxygenURL|vtkImageProperty}} || If pixels look blurry instead of sharp when zoomed in, change this.
 
|-
 
| [[VTK/Examples/Cxx/Broken/Images/ImageText|Draw text in an image]] || {{VTKDoxygenURL|vtkFreeTypeUtilities}}, {{VTKDoxygenURL|vtkImageBlend}} ||
 
|-
 
| [[VTK/Examples/Cxx/Images/ImageSeparableConvolution|Convolve a separable kernel with an image]] || {{VTKDoxygenURL|vtkImageSeparableConvolution}} ||
 
|-
 
| [[VTK/Examples/Cxx/Images/ImageHybridMedian2D|Median filter an image]] || {{VTKDoxygenURL|vtkImageHybridMedian2D}} ||
 
|-
 
| [[VTK/Examples/Cxx/Images/ImageDilateErode3D|Dilate or erode an image]] || {{VTKDoxygenURL|vtkImageDilateErode3D}} ||
 
|-
 
| [[VTK/Examples/Cxx/Images/ImageOpenClose3D|Open or close (morphologically) an image]] || {{VTKDoxygenURL|vtkImageOpenClose3D}} ||
 
|-
 
| [[VTK/Examples/Cxx/Images/ImageRange3D|Replace every pixel with the range of its neighbors according to a kernel]] || {{VTKDoxygenURL|vtkImageRange3D}} ||
 
|-
 
| [[VTK/Examples/Cxx/Images/ImageToPolyDataFilter|Convert a vtkImageData to a vtkPolyData]] || {{VTKDoxygenURL|vtkImageToPolyDataFilter}}, {{VTKDoxygenURL|vtkImageQuantizeRGBToIndex}} ||
 
|-
 
| [[VTK/Examples/Cxx/Images/ImageCityBlockDistance|Compute the Manhattan distance from every point to every black point in a binary image]] || {{VTKDoxygenURL|vtkImageCityBlockDistance}} ||
 
|-
 
| [[VTK/Examples/Cxx/Images/CannyEdgeDetector|Perform Canny edge detection on an image]] || ||
 
|-
 
| [[VTK/Examples/Cxx/Images/ImageToStructuredPoints|Convert a vtkImageData to a vtkStructuredPoints]] || {{VTKDoxygenURL|vtkImageToStructuredPoints}} ||
 
|-
 
| [[VTK/Examples/Cxx/Images/ImageNonMaximumSuppression|Find peaks in an image using non maximum suppression]] || {{VTKDoxygenURL|vtkImageNonMaximumSuppression}} ||
 
|-
 
| [[VTK/Examples/Cxx/Images/Transparency|Make part of an image transparent]] || {{VTKDoxygenURL|vtkImageMapToColors}}, {{VTKDoxygenURL|vtkLookupTable}} || Transparency
 
|-
 
| [[VTK/Examples/Cxx/Images/RTAnalyticSource|RTAnalyticSource]] || {{VTKDoxygenURL|vtkRTAnalyticSource}} || An image source that can be used for regression testing
 
|-
 
| [[VTK/Examples/Cxx/Images/ImageMandelbrotSource|Create a Mandelbrot image]] || {{VTKDoxygenURL|vtkImageMandelbrotSource}} ||
 
|-
 
| [[VTK/Examples/Cxx/Images/ImageMagnify|Stretch an image]] || {{VTKDoxygenURL|vtkImageMagnify}} || Supersample and stretch an image.
 
|-
 
| [[VTK/Examples/Cxx/Images/ImageGridSource|Create a image of a grid]] || {{VTKDoxygenURL|vtkImageGridSource}} ||
 
|-
 
| [[VTK/Examples/Cxx/Images/ImageSinusoidSource|Create a sinusoidal image]] || {{VTKDoxygenURL|vtkImageSinusoidSource}} ||
 
|-
 
| [[VTK/Examples/Cxx/Images/Actor2D|2D actor and mapper]] || {{VTKDoxygenURL|vtkActor2D}} {{VTKDoxygenURL|vtkMapper2D}} ||
 
|-
 
| [[VTK/Examples/Cxx/Images/Cast|Cast an image to a different type]] || {{VTKDoxygenURL|vtkImageCast}} ||
 
|-
 
| [[VTK/Examples/Cxx/Images/ExtractComponents| Extract components of an image]] || {{VTKDoxygenURL|vtkImageExtractComponents}} || This can be used to get, for example, the red channel of an image.
 
|-
 
| [[VTK/Examples/Cxx/Images/ImageAccumulateGreyscale| Display a greyscale histogram]] || {{VTKDoxygenURL|vtkImageAccumulate}}, {{VTKDoxygenURL|vtkBarChartActor}} ||
 
|-
 
| [[VTK/Examples/Cxx/Images/BackgroundImage|Display an image as the background of a scene]] ||  {{VTKDoxygenURL|vtkImageCanvasSource2D}} ||
 
|-
 
| [[VTK/Examples/Cxx/Images/StaticImage|Display a static image]] ||  {{VTKDoxygenURL|vvtkImageViewer2}} || This will display the image, but not allow you to interact with it.
 
|-
 
| [[VTK/Examples/Cxx/Images/DotProduct|Image dot product]] || {{VTKDoxygenURL|vtkImageDotProduct}} || Compute the pixel-wise dot product of two vector images.
 
|-
 
| [[VTK/Examples/Cxx/Images/DrawOnAnImage|Drawing on an image]] || {{VTKDoxygenURL|vtkImageCanvasSource2D}} ||
 
|-
 
| [[VTK/Examples/Cxx/Images/DrawShapes|Drawing shapes in an image]] || {{VTKDoxygenURL|vtkImageCanvasSource2D}} ||
 
|-
 
| [[VTK/Examples/Cxx/Images/ImageMask|Mask a region of an image]] || {{VTKDoxygenURL|vtkImageMask}} ||
 
|-
 
| [[VTK/Examples/Cxx/Images/ImageMathematics|Perform mathematical operations on an image]] || {{VTKDoxygenURL|vtkImageMathematics}} ||
 
|-
 
| [[VTK/Examples/Cxx/Images/ImageMirrorPad|vtkImageMirrorPad]] || {{VTKDoxygenURL|vtkImageMirrorPad}} || Pad the edges of an extended image by mirror existing pixels.
 
|-
 
| [[VTK/Examples/Cxx/Images/InteractWithImage|Visualize and interact with an image]] || {{VTKDoxygenURL|vtkImageActor}}, {{VTKDoxygenURL|vtkInteractorStyleImage}} ||
 
|-
 
| [[VTK/Examples/Cxx/Images/ImageSliceMapper|Visualize and interact with an image]] || {{VTKDoxygenURL|vtkImageSlice}}, {{VTKDoxygenURL|vtkImageSliceMapper}} || This is the new way to do this. It is much more powerful.
 
|-
 
| [[VTK/Examples/Cxx/Images/ImageSlice|Visualize and interact with an image]] || {{VTKDoxygenURL|vtkImageSlice}}, {{VTKDoxygenURL|vtkImageResliceMapper}} || This is even more powerful than vtkImageSliceMapper. It can also do oblique slices.
 
|-
 
| [[VTK/Examples/Cxx/Images/NegativeIndices|Negative Indices]] || {{VTKDoxygenURL|vtkImageData}} || A very powerful feature of vtkImageData is that you can use negative indices.
 
|-
 
| [[VTK/Examples/Cxx/Images/PickingAPixel2|Picking a pixel 2 - modified version for exact pixel values]] || {{VTKDoxygenURL|vtkPropPicker}} ||
 
|-
 
| [[VTK/Examples/Cxx/Images/PickingAPixel|Picking a pixel]] || {{VTKDoxygenURL|vtkPropPicker}} ||
 
|-
 
| [[VTK/Examples/Cxx/WishList/Images/MarkKeypoints|Mark keypoints in an image]] || {{VTKDoxygenURL|vtkVectorText}}, {{VTKDoxygenURL|vtkFollower}} ||
 
|-
 
| [[VTK/Examples/Cxx/Images/ImageCheckerboard|Visually Compare Two Images]] || {{VTKDoxygenURL|vtkImageCheckerboard}} ||
 
|-
 
| [[VTK/Examples/Cxx/Images/ImageThreshold|Threshold an image]] || {{VTKDoxygenURL|vtkImageThreshold}} ||
 
|}
 
 
 
==Image Processing==
 
{{VTKExamplesTable}}
 
|-
 
| [[VTK/Examples/Cxx/ImageProcessing/RescaleAnImage |RescaleAnImage]] || {{VTKDoxygenURL|vtkImageShiftScale}} || Rescale an image
 
|-
 
| [[VTK/Examples/Cxx/Images/vtkImageAccumulate |vtkImageAccumulate]] || {{VTKDoxygenURL|vtkImageAccumulate}} || Histogram
 
|-
 
| [[VTK/Examples/Cxx/Images/ImageValueRange|Get the range of image pixel values (min/max)]] || {{VTKDoxygenURL|vtkImageData}} || minimum, maximum
 
|-
 
| [[VTK/Examples/Cxx/Images/ImageAnisotropicDiffusion2D|Anisotropic diffusion (2D)]] || {{VTKDoxygenURL|vtkImageAnisotropicDiffusion2D}} ||
 
|-
 
| [[VTK/Examples/Cxx/Images/Blending2DImagesWithDifferentColorMaps|Blending 2D images with different color maps]] || {{VTKDoxygenURL|vtkImageMapToColors}} ||
 
|-
 
| [[VTK/Examples/Cxx/Images/CenterAnImage|Center an image]] || {{VTKDoxygenURL|vtkImageChangeInformation}} ||
 
|-
 
| [[VTK/Examples/Cxx/Images/CombineImages|Combine two images]] || {{VTKDoxygenURL|vtkImageBlend}} ||
 
|-
 
| [[VTK/Examples/Cxx/Images/CombiningRGBChannels|Combine layers into an RGB image]] || {{VTKDoxygenURL|vtkImageAppendComponents}} ||
 
|-
 
| [[VTK/Examples/Cxx/Images/ConvertToGreyScale|Convert RGB image to greyscale]] || {{VTKDoxygenURL|vtkImageMagnitude}} || grayscale
 
|-
 
| [[VTK/Examples/Cxx/Images/ImageDifference|Compute the difference image of two images]] || {{VTKDoxygenURL|vtkImageDifference}} ||
 
|-
 
| [[VTK/Examples/Cxx/Images/ImageLuminance|Convert RGB image to greyscale (luminance)]] || {{VTKDoxygenURL|vtkImageLuminance}} || grayscale
 
|-
 
| [[VTK/Examples/Cxx/Images/Flip| Flip an image]] || {{VTKDoxygenURL|vtkImageFlip}} ||
 
|-
 
| [[VTK/Examples/Cxx/Images/Gradient|Image gradient]] || {{VTKDoxygenURL|vtkImageGradient}} || Compute the gradient vector at every pixel.
 
|-
 
| [[VTK/Examples/Cxx/Images/ImageContinuousDilate3D|Dilate an image]] || {{VTKDoxygenURL|vtkImageContinuousDilate3D}} ||
 
|-
 
| [[VTK/Examples/Cxx/Images/ImageContinuousErode3D|Erode an image]] || {{VTKDoxygenURL|vtkImageContinuousErode3D}} ||
 
|-
 
| [[VTK/Examples/Cxx/Images/ImageConvolve|Convolve an image with a kernel]] || {{VTKDoxygenURL|vtkImageConvolve}} || Convolution
 
|-
 
| [[VTK/Examples/Cxx/Images/ImageCorrelation|Correlate two images]] || {{VTKDoxygenURL|vtkImageCorrelation}} ||
 
|-
 
| [[VTK/Examples/Cxx/Images/ImageDivergence|Divergence of a vector field]] || {{VTKDoxygenURL|vtkImageDivergence}} ||
 
|-
 
| [[VTK/Examples/Cxx/Images/ImageEllipsoidSource|Create an image of an ellipsoid]] || {{VTKDoxygenURL|vtkImageEllipsoidSource}} ||
 
|-
 
| [[VTK/Examples/Cxx/Images/ImageFFT|Compute the FFT of an image]] || {{VTKDoxygenURL|vtkImageFFT}} ||
 
|-
 
| [[VTK/Examples/Cxx/Images/ImageGaussianSmooth|Smooth an image]] || {{VTKDoxygenURL|vtkImageGaussianSmooth}} ||
 
|-
 
| [[VTK/Examples/Cxx/Images/ImageGradientMagnitude|Compute the magnitude of the gradient at each pixel of an image]] || {{VTKDoxygenURL|vtkImageGradientMagnitude}} ||
 
|-
 
| [[VTK/Examples/Cxx/Images/ImageLaplacian|Compute the Laplacian of an image]] || {{VTKDoxygenURL|vtkImageLaplacian}} ||
 
|-
 
| [[VTK/Examples/Cxx/Images/ImageNoiseSource|Create an image of noise]] || {{VTKDoxygenURL|vtkImageNoiseSource}} ||
 
|-
 
| [[VTK/Examples/Cxx/Images/ImagePermute|Switch axes of an image]] || {{VTKDoxygenURL|vtkImagePermute}} ||
 
|-
 
| [[VTK/Examples/Cxx/Images/ImageShrink3D|Resample an image]] || {{VTKDoxygenURL|vtkImageShrink3D}} ||
 
|-
 
| [[VTK/Examples/Cxx/Images/ImageSobel2D|Sobel edge detection 2D]] || {{VTKDoxygenURL|vtkImageSobel2D}} ||
 
|-
 
| [[VTK/Examples/Cxx/Images/ImageVariance3D|Variance of a 3D image]] || {{VTKDoxygenURL|vtkImageVariance3D}} || Construct a new image consisting of the variance of the input image at each pixel.
 
|-
 
| [[VTK/Examples/Cxx/Images/RGBToHSV|Convert RGB to HSV]] || {{VTKDoxygenURL|vtkImageRGBToHSV}} ||
 
|-
 
| [[VTK/Examples/Cxx/Images/ResizeImage|Resize an image]] || {{VTKDoxygenURL|vtkImageResize}} {{VTKDoxygenURL|vtkImageSincInterpolator}}|| Resize an image using a sinc interpolator
 
|}
 
 
 
==Widgets==
 
{{VTKExamplesTable}}
 
|-
 
| [[VTK/Examples/Broken/Widgets/PointWidget|PointWidget]] || {{VTKDoxygenURL|vtkPointWidget}} ||
 
|-
 
| [[VTK/Examples/Widgets/SeedWidgetImage|SeedWidgetImage]] || {{VTKDoxygenURL|vtkImageViewer2}}, {{VTKDoxygenURL|vtkSeedWidget}} || How to start the interaction?
 
|-
 
| [[VTK/Examples/Cxx/Widgets/PlaneWidget | Interact with a plane]] || {{VTKDoxygenURL|vtkPlaneWidget}} ||
 
|-
 
| [[VTK/Examples/Cxx/Widgets/vtkAffineWidget | Apply an affine transformation interactively]] || {{VTKDoxygenURL|vtkAffineWidget}} ||
 
|-
 
| [[VTK/Examples/Cxx/PolyData/vtkPolygonalSurfacePointPlacer | vtkPolygonalSurfacePointPlacer]] || {{VTKDoxygenURL|vtkPolygonalSurfacePointPlacer}} || Used in conjuntion with vtkContourWidget to draw curves on a surface.
 
|-
 
| [[VTK/Examples/Cxx/Widgets/SphereWidgetEvents |Sphere widget events]] || {{VTKDoxygenURL|vtkSphereWidget}} ||
 
|-
 
| [[VTK/Examples/Cxx/Widgets/TextWidget |Draw movable text]] || {{VTKDoxygenURL|vtkTextWidget}} ||
 
|-
 
| [[VTK/Examples/Cxx/Widgets/vtkSeedWidget |Seed widget]] || {{VTKDoxygenURL|vtkSeedWidget}} ||
 
|-
 
| [[VTK/Examples/Cxx/Widgets/vtkSphereWidget |Sphere widget]] || {{VTKDoxygenURL|vtkSphereWidget}} ||
 
|-
 
| [[VTK/Examples/Cxx/Widgets/SphereWidget2|vtkSphereWidget2]] || {{VTKDoxygenURL|vtkSphereWidget2}} ||
 
|-
 
| [[VTK/Examples/Cxx/Widgets/Spline|vtkSplineWidget]] || {{VTKDoxygenURL|vtkSplineWidget}} ||
 
|-
 
| [[VTK/Examples/Cxx/Widgets/Border|vtkBorderWidget]] || {{VTKDoxygenURL|vtkBorderWidget}} || 2D selection, 2D box.
 
|-
 
| [[VTK/Examples/Broken/Cxx/Widgets/BorderWorldCoords|vtkBorderWidget]] || {{VTKDoxygenURL|vtkBorderWidget}} || 2D selection box in world coordinates.
 
|-
 
| [[VTK/Examples/Cxx/Widgets/vtkAngleWidget |vtkAngleWidget]] || {{VTKDoxygenURL|vtkAngleWidget}} ||
 
|-
 
| [[VTK/Examples/Cxx/Widgets/vtkAngleWidget_2D |vtkAngleWidget + vtkAngleRepresentation2D]] || {{VTKDoxygenURL|vtkAngleWidget}}, {{VTKDoxygenURL|vtkAngleRepresentation2D}} ||
 
|-
 
| [[VTK/Examples/Cxx/Widgets/Caption|vtkCaptionWidget]] || {{VTKDoxygenURL|vtkCaptionWidget}} ||
 
|-
 
| [[VTK/Examples/Cxx/Widgets/Slider|3D Slider]] || {{VTKDoxygenURL|vtkSliderWidget}}, {{VTKDoxygenURL|vtkSliderRepresentation3D}} ||
 
|-
 
| [[VTK/Examples/Cxx/Widgets/Slider2D|2D Slider]] || {{VTKDoxygenURL|vtkSliderWidget}}, {{VTKDoxygenURL|vtkSliderRepresentation2D}}||
 
|-
 
| [[VTK/Examples/Cxx/Widgets/BalloonWidget|Balloon]] || {{VTKDoxygenURL|vtkBalloonWidget}} ||
 
|-
 
| [[VTK/Examples/Cxx/Widgets/ContourWidget | Contour Widget]] || {{VTKDoxygenURL|vtkContourWidget}} || Create a contour from a set of points and dynamically change the contour using the points as control points.
 
|-
 
| [[VTK/Examples/Cxx/Widgets/vtkDistanceWidget |vtkDistanceWidget]] || {{VTKDoxygenURL|vtkDistanceWidget}} ||
 
|-
 
| [[VTK/Examples/Cxx/Widgets/ImplicitPlaneWidget2|vtkImplicitPlaneWidget2]] || {{VTKDoxygenURL|vtkImplicitPlaneWidget2}} || Clip polydata with an implicit plane.
 
|-
 
| [[VTK/Examples/Cxx/Widgets/BoxWidget|vtkBoxWidget]] || {{VTKDoxygenURL|vtkBoxWidget}} ||
 
|-
 
| [[VTK/Examples/Cxx/Widgets/BoxWidget2|vtkBoxWidget2]] || {{VTKDoxygenURL|vtkBoxWidget2}} ||
 
|-
 
| [[VTK/Examples/Cxx/Widgets/LineWidget2|vtkLineWidget2]] || {{VTKDoxygenURL|vtkLineWidget2}} ||
 
|-
 
| [[VTK/Examples/Cxx/Widgets/vtkBiDimensionalWidget |vtkBiDimensionalWidget]] ||  {{VTKDoxygenURL|vtkBiDimensionalWidget}} ||  When would you use this?
 
|-
 
| [[VTK/Examples/Cxx/Widgets/ImagePlaneWidget|vtkImagePlaneWidget]] || {{VTKDoxygenURL|vtkImagePlaneWidget}} ||
 
|-
 
| [[VTK/Examples/Cxx/Widgets/ImageTracerWidget|vtkImageTracerWidget]] || {{VTKDoxygenURL|vtkImageTracerWidget}} || Scribble on an image.
 
|-
 
| [[VTK/Examples/Cxx/Widgets/ImageTracerWidgetInsideContour|vtkImageTracerWidget]] || {{VTKDoxygenURL|vtkImageTracerWidget}} || Highlight pixels inside a non-regular region scribbled on an image.
 
|-
 
| [[VTK/Examples/Cxx/Widgets/ImageTracerWidgetNonPlanar|Draw on a non-planar surface]] || {{VTKDoxygenURL|vtkImageTracerWidget}} ||
 
|-
 
| [[VTK/Examples/Cxx/Widgets/HoverWidget|vtkHoverWidget]] || {{VTKDoxygenURL|vtkHoverWidget}} || How to detect a hover?
 
|-
 
| [[VTK/Examples/Cxx/Widgets/LogoWidget|Logo widget]] || {{VTKDoxygenURL|vtkLogoWidget}} ||
 
|-
 
| [[VTK/Examples/Cxx/Widgets/OrientationMarkerWidget|Orientation Marker widget]] || {{VTKDoxygenURL|vtkOrientationMarkerWidget}} || Display a polydata as an orientation icon.
 
|-
 
| [[VTK/Examples/Cxx/Widgets/RectilinearWipeWidget|Rectilinear Wipe widget]] || {{VTKDoxygenURL|vtkImageRectilinearWipe}}, {{VTKDoxygenURL|vtkRectilinearWipeWidget}}, {{VTKDoxygenURL|vtkRectilinearWipeRepresentation}} || Compare two images.
 
|-
 
| [[VTK/Examples/Cxx/Widgets/CheckerboardWidget|Checkerboard widget]] || {{VTKDoxygenURL|vtkCheckerboardWidget}}, {{VTKDoxygenURL|vtkCheckerboardRepresentation}} || Compare two images using a checkerboard.
 
|-
 
| [[VTK/Examples/Cxx/Visualization/Cursor2D|vtkCursor2D]] || {{VTKDoxygenURL|vtkCursor2D}} ||
 
|-
 
| [[VTK/Examples/Cxx/Widgets/TexturedButtonWidget|ButtonWidget]] || {{VTKDoxygenURL|vtkButtonWidget}},{{VTKDoxygenURL|vtkTexturedButtonRepresentation2D}} ||Create a textured 2D button
 
|}
 
 
 
==Plotting==
 
 
 
{{VTKExamplesTable}}
 
|-
 
| [[VTK/Examples/Cxx/Plotting/LinePlot|Line plot]] || {{VTKDoxygenURL|vtkChartXY}} ||
 
|-
 
| [[VTK/Examples/Cxx/Plotting/ScatterPlot|Scatter plot]] || {{VTKDoxygenURL|vtkPlotPoints}} ||
 
|-
 
| [[VTK/Examples/Cxx/Plotting/BarChart|Bar chart]] || {{VTKDoxygenURL|vtkChartXY}} ||
 
|-
 
| [[VTK/Examples/Cxx/Plotting/PieChart|Pie chart]] || {{VTKDoxygenURL|vtkChartPie}}, {{VTKDoxygenURL|vtkPlotPie}} ||
 
|-
 
| [[VTK/Examples/Cxx/Plotting/ParallelCoordinates|Parallel coordinates]] || {{VTKDoxygenURL|vtkChartParallelCoordinates}} ||
 
|-
 
| [[VTK/Examples/Cxx/Plotting/Diagram|Diagram]] || ||
 
|}
 
 
 
==Animation==
 
{{VTKExamplesTable}}
 
|-
 
|[[VTK/Examples/Cxx/Animation/AnimateActors|Animate actors]] || {{VTKDoxygenURL|vtkAnimationScene}}, {{VTKDoxygenURL|vtkAnimationCue}}||
 
|-
 
| [[VTK/Examples/Cxx/Utilities/Animation|Animation]] || vtkRenderWindowInteractor::CreateRepeatingTimer || Move a sphere across a scene.
 
|-
 
| [[VTK/Examples/Cxx/Utilities/AnimationScene|Animation (the right way)]] || {{VTKDoxygenURL|vtkAnimationScene}}, {{VTKDoxygenURL|vtkAnimationCue}} || Zoom in on a sphere.
 
|-
 
| [[VTK/Examples/Cxx/Utilities/DataAnimation|Data Animation]] || {{VTKDoxygenURL|vtkCallbackCommand}}, {{VTKDoxygenURL|vtkProgrammableFilter}} || Update points in a dataset every specified interval.
 
|-
 
| [[VTK/Examples/Cxx/Utilities/DataAnimationSubclass|Data Animation (subclass)]] || {{VTKDoxygenURL|vtkCommand}}, {{VTKDoxygenURL|vtkProgrammableFilter}}|| Update points in a dataset every specified interval (using a vtkCommand subclass instead of a callback function.
 
|}
 
 
 
==Geographic Visualization (Geovis)==
 
{{VTKExamplesTable}}
 
|-
 
| [[VTK/Examples/Cxx/Geovis/CompassWidget | Compass Widget]] || {{VTKDoxygenURL|vtkCompassWidget}} ||
 
|-
 
| [[VTK/Examples/Cxx/Geovis/EarthSource|Earth source]] || {{VTKDoxygenURL|vtkEarthSource}} || Create the Earth.
 
|-
 
| [[VTK/Examples/Cxx/Geovis/GeoAssignCoordinates|Convert lat/long coordinates to world coordinates]] || {{VTKDoxygenURL|vtkGeoAssignCoordinates}} ||
 
|}
 
 
 
==Information Visualization (Infovis)==
 
{{VTKExamplesTable}}
 
|-
 
| [[VTK/Examples/Cxx/InfoVis/ParallelCoordinatesView | Parallel coordinates]] || {{VTKDoxygenURL|vtkParallelCoordinatesView}} ||
 
|-
 
| [[VTK/Examples/Cxx/InfoVis/TreeMapView | Tree map]] || {{VTKDoxygenURL|vtkTreeMapView}} ||
 
|}
 
 
 
==Qt==
 
Click [[VTK/Tutorials/QtSetup | here]] for a tutorial on how to setup Qt.
 
 
 
{{VTKExamplesTable}}
 
|-
 
| [[VTK/Examples/Cxx/Qt/QImageToImageSource | Convert a QImage to a vtkImageData]] || {{VTKDoxygenURL|vtkQImageToImageSource}} ||
 
|-
 
| [[VTK/Examples/Cxx/Qt/ShowEvent | Use the showEvent event to do things that you might want to do in the constructor]] ||  ||
 
|-
 
| [[VTK/Examples/Cxx/Qt/RenderWindowNoUiFile | Render window without a .ui file]] || 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 [[VTK/Examples/Qt/RenderWindowUi|RenderWindowUi]])
 
|-
 
| [[VTK/Examples/Cxx/Qt/RenderWindowUISingleInheritance | Render window with a .ui (single inheritance)]] || QMainWindow || Using a QVTKWidget with the Qt Single Inheritance model
 
|-
 
| [[VTK/Examples/Cxx/Qt/RenderWindowUIMultipleInheritance | Render window with a .ui (multiple inheritance)]] || QMainWindow || Using a QVTKWidget with the Qt Multiple Inheritance model
 
|-
 
| [[VTK/Examples/Cxx/Qt/SideBySideRenderWindows | Side by side render windows]] || QApplication ||
 
|-
 
| [[VTK/Examples/Cxx/Qt/vtkQtBarChart | vtkQtBarChart]] || {{VTKDoxygenURL|vtkQtBarChart}} ||
 
|-
 
| [[VTK/Examples/Cxx/Qt/BorderWidget | Border Widget]] || {{VTKDoxygenURL|vtkBorderWidget}}, QApplication ||
 
|-
 
| [[VTK/Examples/Cxx/Qt/EventQtSlotConnect | Connect a VTK event to a Qt slot]] || {{VTKDoxygenURL|vtkEventQtSlotConnect}}||
 
|-
 
| [[VTK/Examples/Cxx/Qt/ImageDataToQImage | Convert a vtkImageData to a QImage]] || ||
 
|-
 
| [[VTK/Examples/Cxx/Qt/ShareCameraBetweenQVTKWidgets | Share the camera between QVTKWidgets]] || ||
 
|}
 
 
 
==Matlab==
 
You must turn on VTK_USE_MATLAB_MEX to use these.
 
{{VTKExamplesTable}}
 
|-
 
| [[VTK/Examples/Cxx/Matlab/MatlabEngineFilter | vtkMatlabEngineFilter]] || {{VTKDoxygenURL|vtkMatlabEngineFilter}} ||
 
|}
 
 
 
==Databases==
 
===SQL===
 
If you have any trouble or errors with the following examples, please troubleshoot using [[VTK/Tutorials/SQLSetup | these instructions]].
 
 
 
{{VTKExamplesTable}}
 
|-
 
| [[VTK/Examples/Cxx/Databases/SQL/MySQL/ConnectAndRead | Connect to and read a MySQL database]] || {{VTKDoxygenURL|vtkMySQLDatabase}}, {{VTKDoxygenURL|vtkSQLQuery}} ||
 
|-
 
| [[VTK/Examples/Cxx/Databases/SQL/MySQL/CreateDatabase | Create a MySQL database]] || {{VTKDoxygenURL|vtkMySQLDatabase}} ||
 
|-
 
| [[VTK/Examples/Cxx/Databases/SQL/MySQL/WriteToDatabase | Write to a MySQL database]] || {{VTKDoxygenURL|vtkSQLQuery}}, {{VTKDoxygenURL|vtkMySQLDatabase}} ||
 
|}
 
 
 
==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===
 
{{VTKExamplesTable}}
 
|-
 
| [[VTK/Examples/Cxx/Video/AVI|AVI (Windows only)]] || {{VTKDoxygenURL|vtkAVIWriter}} || Someone please test this.
 
|-
 
| [[VTK/Examples/Cxx/Video/OggTheora|OggTheora]] || {{VTKDoxygenURL|vtkOggTheoraWriter}} || Can't find lvtkoggtheora
 
|-
 
| [[VTK/Examples/Cxx/Video/MPEG2|MPEG2]] || {{VTKDoxygenURL|vtkMPEG2Writer}} || CMake won't find MPEG2 include?
 
|-
 
| [[VTK/Examples/Cxx/Video/FFMPEG|FFMPEG]] || {{VTKDoxygenURL|vtkFFMPEGWriter}} || CMake won't find FFMPEG include?
 
|-
 
| [[VTK/Examples/Cxx/Images/HistogramBarChart| Display a histogram]] || {{VTKDoxygenURL|vtkImageAccumulate}}, {{VTKDoxygenURL|vtkBarChartActor}} || Testing images seem to vary slightly on different machines.
 
|}
 
 
 
===Small Problems===
 
{{VTKExamplesTable}}
 
|-
 
| [[VTK/Examples/Cxx/Broken/Graph/InteractWithVertices|Interact/move the vertices of a graph]] || {{VTKDoxygenURL|vtkGraph}} ||
 
|-
 
| [[VTK/Examples/Cxx/Broken/Databases/ODBCDatabase|Read an mdb Access database file]] || {{VTKDoxygenURL|vtkODBCDatabase}} || Error: “Could not execute statement”
 
|-
 
| [[VTK/Examples/Cxx/Broken/Images/ImageSobel3D|Sobel edge detection 3D]] || {{VTKDoxygenURL|vtkImageSobel3D}} ||
 
|-
 
| [[VTK/Examples/Cxx/Broken/Images/ImageAnisotropicDiffusion3D|Anisotropic diffusion (3D)]] || {{VTKDoxygenURL|vtkImageAnisotropicDiffusion3D}} || Need a suitable input.
 
|-
 
| [[VTK/Examples/Cxx/Broken/IO/ExodusIIWriter | Write an ExodusII file]] || {{VTKDoxygenURL|vtkExodusIIWriter}} || Write a time varying file. Someone who is familiar with this format should make a reasonable example.
 
|-
 
| [[VTK/Examples/Cxx/Broken/IO/ImageReader2|ImageReader2]] || {{VTKDoxygenURL|vtkImageReader2}} || No errors, but no image is displayed. I think this is a superclass not intended to be used directly?
 
|-
 
| [[VTK/Examples/Cxx/Broken/Plotting/StackedPlot|Stacked plot]] || {{VTKDoxygenURL|vtkPlotStacked}} || Image produced is not consistent. Try again after Marcus merges StringToImage topic.
 
|-
 
| [[VTK/Examples/Broken/Cxx/GeometricObjects/Cell3DDemo|Display a representative object of each class derived from vtkCell3D]] || {{VTKDoxygenURL|vtkCell3D}} || HexagonalPrism seems wrong, Polyhedron is empty.
 
|-
 
| [[VTK/Examples/Cxx/Broken/Images/ImageIdealLowPass|Low pass filter an image]] || {{VTKDoxygenURL|vtkImageIdealLowPass}} ||
 
|-
 
| [[VTK/Examples/Cxx/Broken/PolyData/DeletePoints|Delete points]] || {{VTKDoxygenURL|vtkPolyData}} || No longer crashes but doesn't seem to do anything. See example Delete cells.
 
|-
 
| [[VTK/Examples/Cxx/Broken/PolyData/DeleteCells|Delete cells]] || {{VTKDoxygenURL|vtkPolyData}} || Not sure if this has much utility?
 
|-
 
| [[VTK/Examples/Cxx/Broken/Widgets/PlaybackWidget|Play/stop/fast forward etc buttons]] || {{VTKDoxygenURL|vtkPlaybackWidget}} || Need to show user how to start recording? Playback a recording?
 
|-
 
| [[VTK/Examples/Cxx/Interaction/ClickWorldCoordinates|Get world coordinates of mouse click]] || {{VTKDoxygenURL|vtkCoordinate}} || When zoomed this does not produce the correct coordinate. {{VTKDoxygenURL|vtkWorldPointPicker}}?
 
|-
 
| [[VTK/Examples/Cxx/Broken/Graphs/NodeShape|Vary the shape of vertices]] || {{VTKDoxygenURL|vtkGraphLayoutView}} ||
 
|-
 
| [[VTK/Examples/Cxx/Broken/Graphs/EdgeWidth|Vary the width of edges]] || {{VTKDoxygenURL|vtkGraphLayoutView}} ||
 
|-
 
| [[VTK/Examples/Cxx/Broken/IO/XMLPUnstructuredGridWriter|Write an unstructured grid to parallel files]] || {{VTKDoxygenURL|vtkXMLPUnstructuredGridWriter}} || Even with SetNumberOfPieces(4), only 2 files are generated?
 
|-
 
| [[VTK/Examples/Cxx/Broken/Graphs/TableToGraph|Convert a vtkTable to a vtkGraph]] || {{VTKDoxygenURL|vtkTableToGraph}} || How to specify the columns?
 
|-
 
| [[VTK/Examples/Cxx/Broken/Math/DiagonalMatrixSource|Generate a diagonal matrix]] || {{VTKDoxygenURL|vtkDiagonalMatrixSource}} || What type is output?
 
|-
 
| [[VTK/Examples/Cxx/Broken/Visualization/GlyphTable|Generate different glyphs based on a table]] || {{VTKDoxygenURL|vtkGlyph3D}} || How to specify which values get which glyphs?
 
|-
 
| [[VTK/Examples/Cxx/Broken/IO/XMLPImageDataWriter|Write an image file to parallel files]] || {{VTKDoxygenURL|vtkXMLPImageDataWriter}} || Even with SetNumberOfPieces(4), only 2 files are generated?
 
|-
 
| [[VTK/Examples/Cxx/Broken/InfoVis/AppendPoints|Combine the points of multiple PolyData datasets]] || {{VTKDoxygenURL|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).
 
|-
 
| [[VTK/Examples/Cxx/Broken/Graphs/ExtractSelectedGraph|Extract a subgraph]] || {{VTKDoxygenURL|vtkExtractSelectedGraph}} || Waiting for dual vtkGraphView
 
|-
 
| [[VTK/Examples/Cxx/Broken/Visualization/ViewOrder|Order cells from a viewing direction]] || {{VTKDoxygenURL|vtkKdTree}} ||
 
|-
 
| [[VTK/Examples/Cxx/PolyData/MergeSelections|Merge selections]] || {{VTKDoxygenURL|vtkSelection}} ||
 
|-
 
| [[VTK/Examples/Cxx/Broken/SpherePuzzle|SpherePuzzle]] || {{VTKDoxygenURL|vtkSpherePuzzle}} || Looks like a beach ball... what is the point?
 
|-
 
| [[VTK/Examples/Cxx/Broken/ImageData/vtkImageIterator|vtkImageIterator]]|| {{VTKDoxygenURL|vtkImageIterator}} ||
 
|-
 
| [[VTK/Examples/Cxx/Broken/ExtractSelectedThresholds|Extract points based on a criterion function]] || {{VTKDoxygenURL|vtkExtractSelectedThresholds}} ||
 
|-
 
| [[VTK/Examples/Cxx/Broken/PolyData/ImplicitDataSetClipping|Clip using an implicit data set]] || {{VTKDoxygenURL|vtkImplicitDataSet}} ||
 
|-
 
| [[VTK/Examples/Broken/CellLinks|Get connected cells]] || {{VTKDoxygenURL|vtkCellLinks}} || How to use vtkCellLinks::Links class? How to know how many cells GetCells returns?
 
|-
 
| [[VTK/Examples/Broken/DataObjectToTable|Convert data from an object into a vtkTable]] || {{VTKDoxygenURL|vtkDataObjectToTable}} || How to get the point coordinates into the table?
 
|-
 
| [[VTK/Examples/Broken/ImageViewer2|vtkImageViewer2]] || {{VTKDoxygenURL|vtkImageViewer2}} || How to start the interaction?
 
|-
 
| [[VTK/Examples/Broken/ImplicitDataSet|Convert a polydata to an implicit function]] || {{VTKDoxygenURL|vtkImplicitDataSet}} || The error is: "Can't evaluate dataset!"
 
|-
 
| [[VTK/Examples/Broken/Widgets/CameraWidget|vtkCameraWidget]] || {{VTKDoxygenURL|vtkCameraWidget}} || How to use this?
 
|-
 
| [[VTK/Examples/Broken/VoxelModeller|Compute occupancy of an object on a grid]] || {{VTKDoxygenURL|vtkVoxelModeller}} || VTK_BIT is not supported - convert it?
 
|-
 
| [[VTK/Examples/Broken/GridPointCloud|Divide a point cloud into uniform cubic voxels]] || {{VTKDoxygenURL|vtkCellLocator}} || We can determine which cell a point is in, but how to determine which points are in a particular cell?
 
|-
 
| [[VTK/Examples/Broken/Interaction/Flight|Flight]] || {{VTKDoxygenURL|vtkInteractorStyleFlight}} || linux keypresses not handled. I submitted a patch to the devel list - we'll see if they respond.
 
|-
 
| [[VTK/Examples/Broken/Widgets/vtkPointHandleRepresentation2D |vtkPointHandleRepresentation2D]] || {{VTKDoxygenURL|vtkPointHandleRepresentation2D}} ||
 
|-
 
| [[VTK/Examples/Broken/Interaction/RecordEvents | RecordEvents]] || {{VTKDoxygenURL|vtkInteractorEventRecorder}} || How to exit?
 
|-
 
| [[VTK/Examples/Broken/Interaction/PlayBackEvents | PlayBackEvents]] || {{VTKDoxygenURL|vtkInteractorEventRecorder}} || How to slow down?
 
|-
 
| [[VTK/Examples/Broken/QuadricSurfaceFitting | Quadric Surface Fitting]] || {{VTKDoxygenURL|vtkQuadric}} ||
 
|-
 
| [[VTK/Examples/Broken/RectangularButtonSource|Rectangular button source]] || {{VTKDoxygenURL|vtkRectangularButtonSource}} || is this the intended usage?
 
|-
 
| [[VTK/Examples/Broken/ApplyColors|ApplyColors]] || {{VTKDoxygenURL|vtkApplyColors}} || How is this different from just adding a Colors array to a vtkDataSet?
 
|-
 
| [[VTK/Examples/Broken/vtkPCAAnalysisFilter | vtkPCAAnalysisFilter ]] || {{VTKDoxygenURL|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===
 
{{VTKExamplesTable}}
 
|-
 
| [[VTK/Examples/Cxx/WishList/Plotting/PlotLegacyMethod|Plot data (Legacy method)]] || {{VTKDoxygenURL|vtkXYPlotActor}} || The charts examples always seem to render slightly differently.
 
|-
 
| [[VTK/Examples/Cxx/WishList/Images/HistogramXYPlot| Display a histogram]] || {{VTKDoxygenURL|vtkImageAccumulate}}, {{VTKDoxygenURL|XYPlotActor}} || The charts examples always seem to render slightly differently.
 
|-
 
| [[VTK/Examples/Cxx/Broken/vtkTableBasedClipDataSet |vtkTableBasedClipDataSet]] || {{VTKDoxygenURL|vtkTableBasedClipDataSet}} || Empty
 
|-
 
| [[VTK/Examples/Cxx/Broken/IO/vtkLSDynaReader |vtkLSDynaReader  ]] || {{VTKDoxygenURL|vtkLSDynaReader}} || Empty
 
|-
 
| [[VTK/Examples/Cxx/WishList/vtkCompositeDataGeometryFilter |vtkCompositeDataGeometryFilter]] || {{VTKDoxygenURL|vtkCompositeDataGeometryFilter}} || Empty - combine multiple blocks into a single data set
 
|-
 
| [[VTK/Examples/Cxx/Utilities/WishList/vtkTryDowncast |vtkTryDowncast]] || {{VTKDoxygenURL|vtkTryDowncast}} || Empty
 
|-
 
| [[VTK/Examples/Cxx/WishList/Visualization/CubeAxesActor|vtkCubeAxesActor2D]] || {{VTKDoxygenURL|vtkCubeAxesActor2D}} ||
 
|}
 
 
 
===Big Problems===
 
{{VTKExamplesTable}}
 
|-
 
| [[VTK/Examples/Broken/Cxx/InfoVis/LayoutStrategyComparison|A comparison of some graph layout strategies]] || {{VTKDoxygenURL|vtkGraphLayoutView}} || This crashes unless you build against the VTK-SideBySideGraphs branch from here: git@github.com:daviddoria/daviddoria-vtk.git
 
|-
 
| [[VTK/Examples/Cxx/Broken/Implicit/MarchingContourFilter |Extract iso-surfaces]] || {{VTKDoxygenURL|vtkMarchingContourFilter}} || No output produced without a vtkVoxelModeller, strange output produced with a vtkVoxelModeller.
 
|-
 
| [[VTK/Examples/Cxx/Broken/Widgets/ContinuousValueWidget |Set a value by manipulating something]] || {{VTKDoxygenURL|vtkContinuousValueWidget}} || Can't instantiate this class? But nothing derives from it?
 
|-
 
| [[VTK/Examples/Cxx/Broken/PolyData/Delete cells |Delete a cell. ]] || {{VTKDoxygenURL|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?
 
|-
 
| [[VTK/Examples/Cxx/Utilities/Box |Box intersection]] || {{VTKDoxygenURL|vtkBox}} || This class doesn't have any non static functions! Need to create convenience functions.
 
|-
 
| [[VTK/Examples/Broken/Widgets/TensorProbeWidget|vtkTensorProbeWidget]] || {{VTKDoxygenURL|vtkTensorProbeWidget}} || How is this used?
 
|-
 
| [[VTK/Examples/Broken/Geovis/GeoGlobeSource|GeoGlobeSource]] || {{VTKDoxygenURL|vtkGeoGlobeSource}} ||
 
|-
 
| [[VTK/Examples/Broken/Geovis/GeoView|GeoView]] || {{VTKDoxygenURL|vtkGeoView}} ||
 
|-
 
| [[VTK/Examples/Cxx/Broken/VolumeRendering/FixedPointRayCastImage|FixedPointRayCastImage]] || {{VTKDoxygenURL|vtkFixedPointRayCastImage}} || Shell
 
|-
 
| [[VTK/Examples/Cxx/Broken/FrustumCoverageCuller|vtkFrustumCoverageCuller]] || {{VTKDoxygenURL|vtkFrustumCoverageCuller}} || Doesn't seem to have a property to specify a frustum? What is it for? How to use it?
 
|-
 
| [[VTK/Examples/Cxx/Broken/KdTreeSelector|vtkKdTreeSelector]] || {{VTKDoxygenURL|vtkKdTreeSelector}} || Shell
 
|-
 
| [[VTK/Examples/vtkRungeKutta4|vtkRungeKutta4]] || {{VTKDoxygenURL|vtkRungeKutta4}} || Shell
 
|-
 
| [[VTK/Examples/Cxx/Broken/CoincidentPoints|vtkCoincidentPoints]] || {{VTKDoxygenURL|vtkCoincidentPoints}} || What is this for?
 
|-
 
| [[VTK/Examples/Cxx/Broken/ThreadedExample|Threaded/Parallel example]] || || Shell
 
|-
 
| [[VTK/Examples/Cxx/Broken/AssignAttribute|Assign an array to a particular field]] || {{VTKDoxygenURL|vtkAssignAttribute}} || Shell
 
|-
 
| [[VTK/Examples/Cxx/Broken/TransposeMatrix|vtkTransposeMatrix]] || {{VTKDoxygenURL|vtkTransposeMatrix}} || What is this supposed to operate on? There is no vtkMatrix class.
 
|-
 
| [[VTK/Examples/Cxx/Broken/HyperOctree|vtkHyperOctree]] || {{VTKDoxygenURL|vtkHyperOctree}} || What does this do?
 
|-
 
| [[VTK/Examples/Cxx/Broken/TextExtraction|vtkTextExtraction]] || {{VTKDoxygenURL|vtkTextExtraction}} || Shell
 
|}
 

Latest revision as of 05:58, 22 December 2020

Examples are now hosted here: VTKExamples website.