VTK
The Visualization ToolKit (VTK) is an open source, freely available software system for 3D computer graphics, image processing, and visualization used by thousands of researchers and developers around the world. VTK consists of a C++ class library, and several interpreted interface layers including Tcl/Tk, Java, and Python. Professional support and products for VTK are provided by Kitware, Inc. (www.kitware.com) VTK supports a wide variety of visualization algorithms including scalar, vector, tensor, texture, and volumetric methods; and advanced modeling techniques such as implicit modelling, polygon reduction, mesh smoothing, cutting, contouring, and Delaunay triangulation. In addition, dozens of imaging algorithms have been directly integrated to allow the user to mix 2D imaging / 3D graphics algorithms and data.
Learning VTK
If you are new to VTK, you might want to check out:
- External Tutorials - short presentations from VTK users and developers around the world on VTK.
Once you have done that, the best way to learn VTK in detail may be to actually see/write VTK code. The following resources will help you do just that:
- Examples - Short code examples demonstrating how many of the VTK classes can be used.
- Tutorials - Slightly longer than the examples, these tutorials explain concepts and demonstrate more complicated tasks in VTK.
More resources available to help the user are :
- The VTK Textbook
- The VTK Users Guide
- The VTK Doxygen Man Pages
- The VTK Users Mailing List
- Frequently asked questions (FAQ)
Administrative Topics
Building VTK
- Where can I download VTK?
- Where can I download a tarball of the nightly HTML documentation?
- How do I build the Doxygen documentation?
Extending VTK
- Where can I get VTK Datasets?
- VTK Patch Procedure -- merge requests for the current release branch
Projects/ Tools that use VTK
- What are some projects using VTK?
Future VTK development
Troubleshooting
Miscellaneous
Releases
- VTK 5.8: New Classes
Projects
For inclusion in VTK 5.0
For inclusion in VTK 5.2
- VTK Java Wrapping
- Composite Data Redesign
- Shaders in VTK
- VTK with Matlab
- VTK Time support
- VTK Graph Layout
- VTK Depth Peeling
- Using VTK with JRuby
- Painters
For inclusion in VTK 5.4
For inclusion in VTK 5.6
- VTK Multi-Pass Rendering
- Multicore and Streaming
- Statistics
- Array Refactoring
- 3DConnexion Devices Support
- New Charts API
- New Cell Picker and Volume Picking (start Nov 2010, finish Feb 2010)
For inclusion in VTK 5.8
- Polyhedron cells and MVC Interpolation
- Clipping of closed surfaces (start Mar 26, 2010, finish Apr 22, 2010)
- New wrappers (start Apr 28, 2010)
- Improved image stencil support (start Nov 3, 2010)
- MNI file formats
For inclusion in next VTK release
- Change unicode readers/writers to register as codecs (Proposed)
- New image rendering classes (start Dec 15 2010, finish Mar 15 2011)
For inclusion in VTK 6.0
External Links
- IMTEK Mathematica Supplement (IMS), the Open Source IMTEK Mathematica Supplement (IMS) interfaces VTK and generates ParaView batch scripts
- VTK examples in C# (Visual Studio 5.0 and .NET 2.0)
Development Process
The VTK Community is upgrading its development process. We are doing this in response to the continuing and rapid growth of the toolkit. A VTK Architecture Review Board VTK ARB is being put in place to provide strategic guidance to the community, and individuals are being identified as leaders in various VTK subsystems.
Have a question or topic for the ARB to discuss about the future of VTK? First, please bring the topic to the VTK developers mailing list. If the issue is not resolved there or needs further planning or direction, you may enter a suggested topic for discussion.
Wrapping
Developers Corner
VTK NextGen
We have started collecting works in progress as well as future ideas at NextGen. Please add anything you are working on, would like to collaborate on, or would like to see in the future of VTK!