zSpace device support coming to ParaView

Figure 1. zSpace All-in-One (AIO) – one of the available zSpace devices.

ParaView can now be rendered inside a zSpace device through a new Windows-only plugin already available in ParaView master ! It will be released in ParaView 5.10.

For the best viewing experience, it is meant to be used with Crystal Eyes stereoscopic 3D support. Please note that it is necessary to compile ParaView to access this plugin as it is not available in the binary release of ParaView.

What is zSpace

zSpace is a technology firm based in San Jose, California. Their device combines elements of virtual and augmented reality in a computer. zSpace allows people to interact with simulated objects in virtual environments as if they were real. zSpace is known for its progressive developments in human-computer interaction.

A zSpace device is composed of a stereo display, glasses, stylus and tracking systems.

The zSpace display is a stereo display. In order to display in stereo, at a 120 Hz refresh-rate, 60 fps for each eye, it relies on a needed quad-buffered GPU like a NVIDIA Quadro, using the Cristal Eyes stereo mode.

The stereo glasses enable users to see into the virtual world with a depth perception. As you tilt your head to look around an object, the zSpace device tracks it and can dynamically update its display to the correct perspective.

The stylus is also tracked by the zSpace system and has three buttons, a LED light and vibration capabilities. It allows users to interact with the virtual world.

Usage

First, download the zSpace SDK version 4.0.

Then, you need to enable the zSpace plugin by compiling ParaView with the CMake variable PARAVIEW_PLUGIN_ENABLE_zSpace set to ON. CMake will try to locate the installed SDK by setting the two variables zSpace_INCLUDE_DIR and zSpace_LIBRARY.

If it is not found, set these variables manually. For example, depending on the location of the zSpace SDK :

zSpace_INCLUDE_DIR = "C:/zSpace/zSpaceSdks/4.0.0.3/Inc"

zSpace_LIBRARY = "C:/zSpace/zSpaceSdks/4.0.0.3/Lib/x64/zSpaceApi64.lib"

To enable stereo support with Crystal Eyes, make sure you have a Quad-buffer graphic card. You may need to enable stereo through the NVIDIA Control Panel or the AMD Catalyst Control Center. Then, launch ParaView with command-line option --stereo --stereo-type=”Crystal Eyes”

Load the zSpace plugin through the “Tools >> Manage Plugins…” menu in ParaView depicted in the figure 1.

Figure 2. How to load the zSpace plugin.

A new view named zSpaceView is now available, as seen in the figure below (you may need to create a new layout) :

Figure 3. The new view is named zSpace
view.

Once opened, the view can be configured with various properties under the advanced panel of the View Properties visible in figure 4.

Figure 4. Properties to configure the zSpace view.

You can control the space between left and right eye images with the “Inter Pupillary Distance” property. This is the distance in meters, between the two pupils. This is useful to ensure a better stereo comfort.

Possible interactions

  • Turn around the scene, zoom in or out by moving your head : the zSpace device tracks the glasses to modify the camera viewpoint. This interaction enhances the depth perception and allows you to look at details in your data.
  • You can observe the direction of the stylus in the 3D virtual world while moving it. This direction is drawn with an infinite red ray if the property “Draw Stylus” is ON. If “Interactive Picking” is ON, then at each frame, we check if the ray intersects a geometry. If something is hit, the ray becomes green. In case you load some heavy data, it can be useful to disable this property to gain performance.
  • Grab an actor with the middle button :
Grabbing parts of the motorbike open foam simulation rendered in ParaView using a zSpace device.

You can reset all transformations applied with the middle button of the stylus by clicking on the “Reset User Transforms” button.

  • Move various widgets such as PlaneWidget or BoxWidget to manipulate filters with the right button :
Use the stylus to move a clipping plane on the motor bike rendered in ParaView using a zSpace device. We used a Clip filter with Auto Apply enabled.
  • Perform a pick at the location of the ray with the left button. You can choose to pick cells or points by setting the property “Picking Field Association”. After picking, the cell / point picked is highlighted and its information is displayed at the bottom left of the screen :
Use the zSpace stylus to pick cells on a wavelet and display useful information about the picked cell.

Acknowledgments

This work was supported by EDF (Electricité de France)

The zSpace technology is developed by the zSpace Company

Developments were done by Kitware Europe, France

Questions or comments are always welcome!

X