Interactive RoI Volume Rendering of Unstructured Grids

Sébastien BARBIER
Georges-Pierre BONNEAU


Volume rendering of unstructured grids is a time-consuming process. We present a method to interactively explore large unstructured grids using volume rendering of a region of interest (RoI). Outside the RoI, the context is either left blank or rendered using a fast visualization technique, e.g. planar slices, compressed isosurfaces or point-based rendering.
The RoI is built using adjacency relations. Its construction ensures an efficient use of temporal coherency when the user moves the RoI and increases or decreases its size.
Furthermore, this temporal coherency is used to accelerate the volume rendering of the RoI. To do this, we propose a modified version of the Scanning Exact Meshed Polyhedra Visibility Ordering algorithm that takes into account the temporal coherence in order to more efficiently sort the tetrahedra inside the RoI. With this modified version, we do not have to recompute from scratch a new sort of the displayed tetrahedra when the RoI changes.
Together, the focus and context framework and the use of temporal coherency guarantee an interactive framerate for the visual exploration of large datasets.



Vidéo (.avi) : RoI.avi (60 Mb)

Binary (for Windows): Zip File
openGL, glu and glut .dll are required to run the program.
N.B.: If shaders are not supported by your graphics hardware, the program will still run, but DVR is disabled and the display will be VERY slow.

Others renderings systems available:


Download the blunt dataset to run this tutorial.

The .ts format file encodes a tetrahedral grid with one scalar value by vertex:
#vertices #tetrahedra
list of vertices:
x y z scalar
list of tetrahedra:
v0 v1 v2 v3

Start the program: RoI.exe blunt.ts

Two windows are opened: the openGL display that renders the scene and a GLUI control window.

openGL display

GLUI control windows

You can active the Region of Interest (RoI) with the "o" key. Its center is located by the black axes. A Direct Volume Rendering of the RoI is displayed thanks to coherent SXMPVO sorting and PT rendering.

Region of Interest

To change the camera position, use the left mouse button to rotate, the right mouse button to translate or the middle mouse button to zoom.
To move the RoI, type the "m" key and use the right mouse button. You can increase/decrease the size of the region with the "+/-" keys.
You can alternate the display of the RoI with a shrink solid tetrahedra representation with the "t" key, or disable the stencil buffer option with the "s" key.

Shrink Solid Tetrahedra


wo/ Stencil

In order to display the context outside the RoI, the following possibilities are offered:
A transfer function is chosen by default on our program.You can change the transfer function with the "l" key. 5 RGBA values can be modified. A histogram and the transfer function are displayed in the openGL Windows to help. You can also give your own transfer function using the -lut option with a file as Blunt.lut. Run : ./RoI.exe Blunt.ts -lut Blunt.lut; to use your transfer function.

Transfer function values

Transfer function and histogram

Press "q" key to exit the program.