Volume Rendering Options Menu

This widget controls some rendering options for both the main viewing window and the Snoops viewing window (see Snoops in the Goodies Menu on the DAVE Master Widget). People usually use 2D Texture unless they have a huge image or are on an old SGI (molmed, graphics) which doesn't support 2D textures.


Planes - tmesh

This is the default rendering mode. The data volume is split into data planes, each of which is then rendered. In this mode THE REGION BETWEEN VOXELS IN A PLANE IS DISPLAYED AS A TRIANGLE whose 3 vertices are colored based upon the value of the 3 voxels it connects. Thus, linear interpolation is performed between voxel values (which are within a data plane). No interpolation is performed between planes (thus you may see slight gaps between the data planes, depending upon the data values and your z spacing). The Cubes rendering mode won't have any gaps. Also, depending upon the orientation of the view, different data planes are used (e.g., XY planes, YZ planes, or XZ planes). As the view switches between different planes image appearance may change somewhat. See the Volume Debugging menu item from the Edit Volume Menu to override this. Interpolation tends to make the rendering look more continuous and smoother. It will make it more difficult to precisely see individual voxel values. This version of planes uses a triangular mesh (tmesh) to gain maximum speed by permitting the ABS & REL sliders in the Edit Volume widget to control the speed vs. image quality tradeoff. Speed is gained by grouping similar triangles together into one big triangle (based upon the ABS and REL sliders). If the sliders are set too high, visual artifacts will appear (streaking). Other rendering modes ignore these sliders. See also the "Display List Speedup" menu option.

Planes - triangles

Similar to "Planes - tmesh" but the ABS and REL sliders are ignored. Every individual triangle is drawn. Not as fast. Sometimes more accurate.


In this rendering mode EACH VOXEL IS DISPLAYED AS A CONSTANT INTENSITY CUBE centered around the voxel's position. Even though the cubes are constant intensity they may not appear this way. This is because what you are seeing in a cumulative projection through the constant intensity cube, thus intensity will vary depending upon how much of the cube projects to a point on the viewing window. This display mode is slower than rendering in planes mode when many voxels are present. However, when fewer than 50,000 voxels are visible this has an automatic speedup mode which makes it quicker than planes mode (when the images are large). This speedup is only active when the pixel characteristics (opacity, brightness, etc.) do not change. Any change in these characteristics will cause a more lengthly pause. But rotations, panning and zooming should all go at the faster rate. No other rendering modes have this speedup ability (yet). This mode should be particularly useful if you are zoomed way in on a few voxels (or are looking in the snoops window - see "Snoops" under the Goodies menu). See also the "Display List Speedup" option on the menu.

Shaded Cubes

The only difference between this mode and the Cubes mode is that the cubes are shaded. This is the way a cube would appear if you were looking at it in a room. Thus, even though the cube is at a constant intensity (i.e., all sides of the cube are the same color) the different sides will appear to be different shades depending upon their orientation relative to your eye. This mode tends to make the cubes appear the most real, especially if their opacity is also set fairly high. This is the slower than Cubes rendering mode. This mode should also be particularly useful if you are zoomed way in on a few voxels.

Opaque Cubes

This makes the cubes totally opaque - so cubes in front block the view of cubes in back. This is similar to picking "Opaque Data" from the Volume Rendering menu, see below, but opacity can be separately specified for the main and snoops windows. Opacity will make dim cubes more visible, especially if you change to a background color (Edit->Bkgd Colors) which is bright. You may want to shrink the cube size slightly to clearly see cube boundaries and/or to see past the opaque cubes. See "Cube Size" below.

Shaded Opaque Cubes

This combines the shading and opacity options. It is often useful in the snoops window since it tends to make voxels appear more "solid" and "real".

Gaussian Blob

In this mode, each voxel is represented as a spherically symmetric blob whose intensity drops of in a (roughly) Gaussian manner from the center (which has an intensity equal to the value of the voxel) to black (0). The radius of the blob is 2.5 standard deviations. The accuracy with which the blob represents a Gaussian is controlled by menu options. This display mode can be very slow (depending upon accuracy settings). It is probably most useful when zoomed way in on a few voxels, or for a nice static image. Note: currently we don't modify blob size when displaying the image at lower resolution (which we do for the other display modes). Thus, at lower resolutions, neighboring blobs will appear to have more space between them. Also, the dim parts of the blob will not be displayed if their value is less than the value of the left brightness slider.


This mode does interpolation between voxel values. It uses a more accurate (but slower) algorithm than Planes mode. This is by far the slowest rendering algorithm and probably only necessary when zoomed way up (so that rendering artifacts become more visible). Only data which is not volume clipped is rendered, so use volume clipping to clip away as much as possible before rendering in this mode. Also, time is proportional to the size of the window, so shrink the rendering window as small as is feasible. The percent done is shown in the yellow bar on the volume widget. Rendering can be interrupted by pressing the HALT DRAW button. Rendering in this mode always uses the highest resolution data (i.e., the original data) regardless of the settings of the resolution sliders. This mode currently ignores any custom colormaps the user may have loaded. This mode does not work in perspective (see DAVE Master Widget). Only data voxels are rendered in this mode; lines and surfaces will not be visible.

2D Texture

This option speeds up drawing speeds by a factor of 100!

When this is chosen it may take a while (seconds to minutes depending upon your image size) for an image to appear. It will always be at full resolution since there is no need to go to lower resolution for speed. Once in this mode, rotating, zooming, and clipping all are very fast. However, changing the brightness sliders may be very slow (seconds to minutes). So you're best off setting the brightness prior to entering this mode. But on newer systems and small images brightness changes are fairly fast. This mode also takes about 24 times as much RAM as the size of one of your images. So you don't want to use it on an image much bigger than 5MB (unless on a 2GB Dell). The -K on the command line cuts the space needed by a factor of 3 (only 1 orientation - zplane - of textures is generated), and default compression (-nocomp turns it off) cuts it further on some systems (compression takes 1 bytes per voxel instead of 4 I think). The menu has an option to pop up a widget to control image quality of the texture image (Texture Options...). This option is not available on the older SGIs (molmed, graphics, vision, fancy).

3D Texture

Similar to 2D texture but better at times. It interpolates in 3D. Unfortunately this only works on systems with geforce3 cards or better (e.g., the Dells). It is particularly useful when using the arbitrarily orientable cutting plane (Edit->Data Planes->Arbitrary, or Stuff->Planimeter), it will speed up drawing the arbitrary plane (when it's in "surface" mode) significantly; this also helps prevent DAVE hanging when window redraw events pile up. It also produces a higher resolution, better quality image on the arbitrary plane. It does not use compression (but 3 orientations not needed). A 1 pixel black border is set around the image, this is not usually a problem at the x and y borders, but it also means that

the first and last z planes are set to black in 3D texture mode.

Gaussian Standard Deviation

This is the standard deviation (in pixels) of the Gaussian blob associated with each voxel (this is only applicable when in Gaussian Blob rendering mode). Making this larger will increase the size of the blob, since it always has a radius of 2.5 standard deviations.

Cube Size

When rendering is in Cube or Shaded Cube mode, this controls the size of the cube associated with each voxel. Cubes are centered around the voxel location and by default (Cube Size = 1.0) extend from halfway from the previous voxel to halfway to the next voxel (e.g., the cube for voxel (10,10,10) goes from (9.5,9.5,9.5) to (10.5,10.5,10.5)). Thus the cubes all touch but don't overlap.

Sometimes, especially when looking at many very opaque cubes, it is useful to look at much smaller cubes. This prevents voxels in front from obscuring those in the back.

Volume Rendering Options Menu

Each Gaussian blob is divided into concentric rings. Choosing the "Gaussian Rings" option allows control over how many such rings there will be within 2.5 standard deviations from the center. The default is 2. The more rings there are, the more accurately a Gaussian blob will be represented, but the slower the rendering. Similarly, the "Gaussian Ring Segments" option controls how many pie-shaped sectors are used to approximate a circle, the default is 5.

Display List Speedup

Choosing this option will frequently speed up the drawing of images. This is accomplished by having DAVE keep around a list (a "display list") of what it should draw. Normally (when this option is not chosen) DAVE will automatically recalculate a list every time it draws the scene. Even when this option is picked, DAVE must still recalculate the list whenever a viewing parameter changes (e.g., the brightness sliders are moved). The big win, however, is that the list does not need to be updated if the scene is just rotating (except every 90 degrees of rotation when in Planes mode). The display list can be quite large for large, non-sparse images.

Gradient Shading

When chosen, this causes the image display to include shading based upon reflection of light from the "surfaces" in the data volume. In other words, as in the real world, surfaces which face the viewer will tend to be brighter (since the light comes from the viewers' location unless changed by pressing "l" while the cursor is in the viewing window and then clicking where you want the light to move to; it moves along a hemisphere cupped away from you, so movement out from the center is also movement to the sides; pressing "l" again turns of the light icon) and those which face the side of the scene will be darker. Those which face backwards will be lit by the back light (which is red by default, see Edit->Back Light). This tends to make images look more realistic, especially if the image is composed of bright objects against a black (0 valued) background. Since the voxels in the data volume reflect light, changing the front or back light colors (Edit->Front Light, Edit->Back Light) will change the color of the image. This option only applies when in Planes-tmesh mode. It is also only works with one data volume right now.

Volume Material...

This only applies when Gradient Shading is chosen. It allows the color and shininess of the data volume to be modified (see Edit->Objects' "Edit Object Materials..." menu item help for more info on this).

Use Grad Mag with Gradient Shading

By default (when this is not chosen) all "surfaces" in the scene reflect light equally well. When this is chosen, sharper surfaces (i.e. more intensity contrast between the voxels on one side of the surface and the other) will reflect stronger and weaker surfaces will be more transparent. Thus weak signals will be less visible and distracting. This only applies when Gradient Shading is chosen.

Recommend Recalc

This option is automatically checked by DAVE when you have changed brightness slider settings so that they no longer reflect the settings which were used to calculate the gradient image. By clicking on this you will cause it to become unchecked and the gradient image to be recalculated based upon current settings.

Texture Options...

Pops up a widget which lets you control the quality of the texture mapped image. This should be done prior to going into 2DTexture mode. If done afterwards, make sure to press "Update" after you specify the changes. The defaults should be reasonable for most work, so you don't need to touch this.
Copyright 1995 by Lawrence M. Lifshitz and the University of Massachusetts Medical School. All rights reserved.