Kitware Source Issue 38
Total Page:16
File Type:pdf, Size:1020Kb
IssueIssue 38 • 24 July • 2016 TABLE OF CONTENTS RECENT RELEASES Editor's Note ............................................................................... 1 PARAVIEW 5.1 ParaView 5.1 brought the process of ray tracing to the open- source application for data analysis and visualization. This Recent Releases ......................................................................... 1 process utilizes the OSPRay library from Intel. The latest release also brought the capability to render picture-in- Extending ModelBuilder for Post-processing Simulations ...... 3 picture visualizations to ParaView. On top of new rendering capabilities, ParaView gained Developing a Virtual Simulator for Laparoscopic Surgery ....... 6 several new filters with the release. A new collection of filters interpolates point clouds to line, plane, and regular Introducing SlicerAstro: A Visualization Tool for Hydrogen volume meshes, including smoothed-particle hydrodynmics in Galaxies ................................................................................10 (SPH) interpolation. Another filter efficiently resamples large unstructured grids to generate regular grids. Ray-traced Rendering Revisited .............................................. 14 In other news, the 5.1 release refactored the zero-copy infrastructure in ParaView to pass data arrays with arbitrary Kitware News ............................................................................ 17 memory layouts to ParaView Catalyst. As a result, ParaView uses less overhead when it accesses the arrays in filters. The release also refactored three-dimensional (3D) widgets so EDITOR'S NOTE that applications can more efficiently employ them. Over the past few months, we have welcomed many new With additional improvements, ParaView gained new team members! To make room, we are expanding our functionality. For example, the release made it possible to office space in Carrboro, North Carolina. The new space will simultaneously look at multiple blocks in composite data include comfortable seating that promotes collaboration. It sets. The release also made it possible to rename views. will also have a foosball table, several themed conference rooms, an area to store bicycles, and standing and walking workstations. To give back to the communities that surround our growing offices, we participated in and hosted multiple drives this summer. In June, we arranged a book drive to benefit Captain Youth and Family Services. Along with books, we donated recyclable bottles and cans to help the organization raise support for its programs. We also opened our doors to the American Red Cross for a blood drive. In keeping with tradition, we enjoyed outdoor festivities with family and friends at our company picnics, which took place earlier this month. For our annual T-shirt design, however, we tried something new. We set aside our tie- dyeing skills and drew inspiration from coloring books. We truly had a blast, as we expressed our creativity with fabric markers. For pictures from our summer activities, please visit ParaView visualizes streamlines around an engine. (Altair our blog at https://blog.kitware.com. Engineering and FluiDyna GmbH) ParaView visualizes a planetary gearbox. (Altair Engineering and FluiDyna GmbH) Further changes to ParaView established a welcome screen In other introductions, the release launched the GIT_ that contains links to resources. These resources include SHALLOW 1 option for the ExternalProject module. the two-page “ParaView Getting Started Guide” and With this option, the module can make a shallow clone example visualizations. For more information on using of a Git repository. The module also gained the abilities ParaView and downloading version 5.1, please refer to to recursively initialize Git sub-modules and to initialize http://www.paraview.org. new sub-modules when CMake updates. Another module, InstallRequiredSystemLibraries, gained the ability CMAKE 3.6 to enable the app-local deployment of Windows Universal C Earlier this summer, CMake 3.6 became available to the Runtime (CRT) libraries with Visual Studio 2015. To learn more software development community. With the 3.6 release, the about the InstallRequiredSystemLibraries module and to try it out in the latest version of CMake, please visit Visual Studio 14 2015 generator obtained experimental https://www.cmake.org/download. support for the Clang/C2 toolset. In addition, the list() command received a FILTER sub-command, which filters list elements by regular expression. ITK 4.10 On behalf of the Insight Segmentation and Registration The release also added a variable that informs the try_ Toolkit (ITK) community, Kitware released ITK 4.10. The command to build a static library instead of an compile() release added a remote module that allows ITK to align two executable. The variable, CMAKE_TRY_COMPILE_TARGET_ projection images of a patient. The release also presented a , applies to cross-compiling toolchains that cannot link TYPE major update to the internal Vision Numerics Library (VNL) binaries without custom flags or scripts. in ITK. In addition to this update, version 4.10 made the interface of wrapper classes more Pythonic, and it allowed In addition, the release introduced the <LANG>_CLANG_TIDY Windows builds to process images over four gigabytes by target property and the CMAKE_<LANG>_CLANG_TIDY vari- default. able. Together, the property and variable tell the Makefile and generators to run as well as the Ninja clang-tidy To download ITK 4.10.0, please go to https://www.itk.org. compilers for C and CXX languages. 2 EXTENDING MODELBUILDER FOR POST-PROCESSING SIMULATIONS Bob O'Bara, Yuman Yuan, John Tourtellott, Chris Harris (Kitware) Advanced simulation workflows often require the applica- simulation workflow cycle. This version of ModelBuilder tion of several tools to aid in constructing geometric domains, exposes some of the underlying post-processing capabilities in generating meshes, in modeling simulation information that the ParaView architecture provides. such as boundary conditions and material properties, in employing numerical solvers, and in post-processing results. To test the new capabilities, the team modeled two elec- Such application forces engineers and scientists to generate tromagnetic workflows that have roots in the Omega3P appropriate input files, understand different command-line module in the Advanced Computational Electromagnetics tools, and develop code. In addition, many engineers and 3D Parallel (ACE3P) system at the SLAC National Accelerator scientists need to access to high-performance computational Laboratory. For the tests, ModelBuilder generated a pillbox resources. As the July 2015 issue of the “Kitware Source” model and a crab cavity model. This article presents the [3] describes, a team of developers at Kitware created the results from the tests. Computational Model Builder (CMB) framework [1] and the ADDING MULTIPLE RENDER VIEWS ModelBuilder application [2] to remove many of the obsta- The latest major release of ModelBuilder is version 4.0. This cles that engineers and scientists face when they employ version provides a single three-dimensional (3D) view that advanced simulation workflows. displays geometric domains and meshes. In order to support ModelBuilder can create or load geometric domains, interface additional post-processing functionality, ModelBuilder with various meshing technologies, model the information needed a second 3D view. The development team created that simulations require, and generate—and in some cases, this second view for ModelBuilder to use not only to post- submit—the necessary files to run the simulations. However, process results but to enable side-by-side comparison of to post-process results, ModelBuilder needs to access func- geometric domains and their respective analysis meshes. tionality from an additional tool such as ParaView. As part of a Phase I Department of Energy Small Business Innovation Since only one view can be active at any time, the Info, Research project to support multiphysics workflows for par- Properties, and ColorMap components in the prototype user ticle accelerator simulations, the team created a prototype interface (UI) update to reflect the active source in the active of a custom version of ModelBuilder that completes the view. The eyeball icons in the pipeline tree view also update The prototype UI in ModelBuilder shows a scalar field color map of an electric field. 3 to show the visibility status of the sources and filters in the The team also looks to extend the Properties component to active view. support additional filters. The development team also added a camera link between TESTING NEW CAPABILITIES the two render views. This link allows ModelBuilder to To test the capabilities of the prototype with distinct and exhibit the same camera setup in both views when changes relevant examples of particle accelerator simulations, the occur in one view or the other. development team selected two models. ACCESSING POST-PROCESSING CAPABILITIES The first model is the Gaussian pillbox. The Gaussian pillbox ParaView is an open-source platform for analyzing and is a simple model that scientists use to perform electromag- visualizing data [4]. It serves as the underlying founda- netic accelerator simulations. The model contains a central tion of CMB. To expose the functionality of ParaView cylinder, which makes up its geometry and represents the in ModelBuilder, the development team added a Post accelerator cavity. The model