VTK’s core data model is able to represent almost any real-world problem with which physical scientists are likely to work. The primary dataset classes are vtkImageData, vtkRectilinearGrid, vtkStructuredGrid (finite difference grids), vtkPolyData, and vtkUnstructuredGrid (finite element meshes). They present a data interface based on point locations in three-dimensional space and cells that cover the area between points. VTK’s pipeline adds the temporal dimension. Groups of datasets are  organized inside Composite and Hierarchical collection classes. VTK’s tablesgraphs, and generic adapters encompass data that is not naturally associated with three-dimensional spaces.


Besides the mesh, all of VTK’s data objects keep references to any number of vtkDataArrays. The values held in the arrays may be aligned on the points or cells, or they may be left unaligned. The values may be simple scalar numeric quantities, vector or tensor quantities, or more complicated types like strings and variants.

primary dataset classes

VTK has a large number of readers and writers (for individual data objects), as well as importers and exporters (for the entire visible scene), that convert data files to and from VTK’s in memory data structures. These include:

Linear cell types in VTK