How kitware/vtk works
VTK is a C++ toolkit for image processing, scientific algorithms, graphics, volume rendering, and visualization. Its central workflow is to supply data to a demand-driven algorithm pipeline, process or transform that data, and render or otherwise inspect the results. The tree also shows charting, VTK-m acceleration, and WebGPU compute as distinct capabilities. Pipeline request propagation is supported by the sampled executive documentation; several broader connections are architectural summaries from the README and tree, not verified call paths.
Main entry points: vtkCellArray.h Meshes and datasets · MeshCachePipeline.h Data algorithms · vtkStreamingDemandDrivenPipeline.h Demand executive · vtkWebGPUComputePipeline.h WebGPU compute
Components 14
Data and Core
- Arrays and objects
Common/Core/vtkDataArray.h - Meshes and datasets
Common/DataModel/vtkCellArray.h - Mesh cache
Common/Cache/vtkDataObjectMeshCache.h
Pipeline and Filters
- Demand executive
Common/ExecutionModel/vtkStreamingDemandDrivenPipeline.h - Data algorithms
Filters/Temporal/Testing/Cxx/MeshCachePipeline.h - Geometry algorithms
Common/ComputationalGeometry/vtkParametricFunction.h - Image processing
Accelerators/Vtkm/Filters/vtkmExtractVOI.h
Visualization
- 3D rendering
Rendering/Core/vtkStateStorage.h - Charts and plots
Charts/Core/vtkChartXY.h - Graph views
Views/Infovis/vtkHierarchicalGraphPipeline.h
Compute Acceleration
- WebGPU compute
Rendering/WebGPU/vtkWebGPUComputePipeline.h - Compute textures
Rendering/WebGPU/Private/vtkWebGPUComputePassTextureStorageInternals.h - VTK-m filters
Accelerators/Vtkm/Filters/vtkmAlgorithm.h
Other components
- VTK user
Connections 13
- VTK user → Demand executive: requests updates
- Demand executive → Data algorithms: passes requests
- Data algorithms → Meshes and datasets: produces datasets
- Meshes and datasets → Arrays and objects: contains attributes
- Data algorithms → Geometry algorithms: uses geometry
- Data algorithms → Image processing: processes images
- Meshes and datasets → 3D rendering: supplies render data
- Meshes and datasets → Charts and plots: supplies plot data
- Meshes and datasets → Graph views: supplies graph data
- VTK user → WebGPU compute: dispatches compute
- WebGPU compute → Compute textures: manages textures
- Data algorithms → VTK-m filters: accelerates filters
- Mesh cache → Meshes and datasets: caches mesh data