Version 8.0 of the Visualization Toolkit Assigns New Code Standard

Kitware disseminates version 8.0 of the Visualization Toolkit, which prioritizes C++11 and data processing for high-performance computing.

Kitware passed another turning point for the Visualization Toolkit (VTK) with the release of version 8.0. The release became the first to benefit from C++11 compliant compilers. VTK now officially supports different aspects of C++11 such as default constructors, static assertion, non-static data members and enumeration declaration.

“The new features in C++11 allow developers to be more productive and eliminate common sources of bugs,” said Dave DeMarle, a principal engineer at Kitware and a developer of VTK. “Now that VTK enforces the availability of a C++11 compiler, developers can rely on capabilities without maintaining awkward workarounds.”

For high-performance computing, the 8.0 release annexed the VTK-m framework of tools. These tools include new filters that process data. Kitware uploaded the filters to the Accelerators/Vtkm folder in the VTK repository.

Outside of VTK-m, the release merged algorithms that process points and geometries. One algorithm (vtkLagrangianParticleTracker) visualizes particles as they move through simulations, and another algorithm (vtkCookieCutter) precisely cuts a two-dimensional (2D) geometric surface with a separate 2D surface that acts as a stencil. Additional algorithms (vtkDensifyPointCloudFilter and vtkUnsignedDistance) operate on point clouds. The release also augmented existing algorithms in VTK. The algorithm for dual depth peeling, for example, developed the ability to render volumes.

In addition, the release added the QVTKOpenGLWidget class, which provides a robust integration of VTK and Qt 5. The release also improved the OpenVR module, which pairs data with Oculus Rift and HTC Vive.

“The transitions to Qt 5, C++11 and Python 3 give users, developers and packagers a great deal of capability and flexibility in VTK-enabled applications,” DeMarle said.

VTK is an open-source software platform that manipulates and displays two-, three- and four-dimensional data. The VTK download page contains files for version 8.0. For more points of the release, please read the Kitware blog. For assistance with VTK, please contact kitware(at)kitware(dot)com.

This technology was supported by the National Institute Of Biomedical Imaging And Bioengineering of the National Institutes of Health under Award Number R01EB014955. The content is solely the responsibility of the authors and does not necessarily represent the official views of the National Institutes of Health.

This material is based upon work supported by the U.S. Department of Energy, Office of Science, under Award Number DE-SC0012387.

This report was prepared as an account of work sponsored by an agency of the United States Government. Neither the United States Government nor any agency thereof, nor any of their employees, makes any warranty, express or implied, or assumes any legal liability or responsibility for the accuracy, completeness, or usefulness of any information, apparatus, product, or process disclosed, or represents that its use would not infringe privately owned rights. Reference herein to any specific commercial product, process, or service by trade name, trademark, manufacturer, or otherwise does not necessarily constitute or imply its endorsement, recommendation, or favoring by the United States Government or any agency thereof. The views and opinions of authors expressed herein do not necessarily state or reflect those of the United States Government or any agency thereof.

This material was also supported by Sandia National Laboratories. Sandia National Laboratories is a multimission laboratory managed and operated by National Technology and Engineering Solutions of Sandia LLC, a wholly owned subsidiary of Honeywell International Inc. for the U.S. Department of Energy’s National Nuclear Security Administration under contract DE-NA0003525.

Questions or comments are always welcome!