IDL Slicer Program (Revised 3/92) This program shows the use of the IDL Slicer procedure, which displays slices and isosurfaces created from three dimensional volume cubes. The slicer program has the following modes: SLICES: Displays or removes orthogonal or oblique slices thru the data volume. BLOCK: Displaces the surfaces of a selected block inside the volume. CUTOUT: Cuts blocks from previously drawn objects. ISOSURFACE: Draws an isosurface contour. PROBE: Displays the position and value of objects using the mouse. Colors: Manipulates the color tables and contrast. Rotations: Sets the orientation of the display. Journal: Records and plays back sessions. OPERATION OF CONTROLS Done button: Exits the demo. Erase button: Removes all slices, and draws an empty frame. Undo button: Removes the most recently object by swapping the current view with the previous view. Orientation button: Selects the orientation of the volume data with respect to the display axes. The data X axis is the first dimension, Y is the second, and Z is the third. XY Exchange Exchanges X and Y Axes XZ Exchange Exchanges X and Z Axes YZ Exchange Exchanges Y and Z Axes X Reverse Reverses the X Axis Y Reverse Reverses the Y Axis Z Reverse Reverses the Z Axis Reset Reverts to the default orientation Interpolation button: Selects either nearest neighbor or bilinear interpolation sampling. Bilinear interpolation is slower but yields more pleasing results. Operation of Each Mode SLICES MODE: Draws orthogonal or oblique slices thru the volume. Orthogonal Mode: Left mouse button: Depress this button and drag the mouse to position the slice within the volume. Releasing the button draws the slice. Middle mouse button: acts as a probe button. Clicking this button over an object displays its 3D location and data value. Right mouse button: switches the plane of the slice. The plane in relation to the volume is drawn in the left drawing window. Two buttons select between the draw mode and the expose mode. The draw mode draws the slice while the expose mode removes the object between the observer and the slice. Oblique Mode: The oblique plane is defined by three items whose values are displayed in the lower left text widget. 1) a point inside the cube which is on the plane. Manipulate this point by pressing the left mouse button and dragging the mouse on one of the three visible faces of the cube. 2) the angle between the X axis and the plane (azimuth). This angle is manipulated by selecting the Azimuth button at the upper left corner of the drawing window and moving the mouse from left to right with the right mouse button depressed. 3) and the angle between the Z axis and the plane (elevation). Change this parameter by selecting the Elevation button at the upper left corner and moving the mouse from left to right with the right mouse button depressed. Create the slice by setting the parameters and pressing the Go button at the upper left corner of the drawing window. BLOCK MODE: Draws the visible faces of a block. The block is selected as follows: Left mouse button: dragging this button moves corner number 0. See the left drawable for the orientation of the corners. As the mouse is dragged, the outline of the cube in the main window is updated. Lines are drawn from the selected corner to the 3 closest visible volume faces. Middle mouse button: Marks corner number 1, in the manner as described above. Right mouse button: Selects the plane in which the corner may be moved. One 3D coordinate of the corner is fixed. This plane is displayed in green in the left drawing window. GO button: draws the block using the selected sub-volume. Cancel button: removes the outline of the block from the display. Cut Into / Cut Over: has no effect in this mode CUTOUT MODE: Cuts blocks from previously drawn objects. The block is selected in the same manner as the Block Mode. In addition, there are two submodes: Cut Into and Cut Over. Cut Into only cuts into previously drawn objects, while Cut Over draws the entire back faces of the block, even when there is no previously drawn object. ISOSURFACE MODE: draws an isosurface contour. Selecting this mode draws a histogram of voxel data versus population in the left window. The value of the isosurface threshold may be selected by either moving the slider to the selected value, or by clicking in the histogram window. Either the high or low side of the isosurface may be drawn. If the higher voxel values are inside the isosurface, select the Low Side button; if the lower voxel values are inside, select the High Side. Clicking on the GO button draws the isosurface. WARNING: this may take a long time, depending upon the size of the volume and the speed of your computer. PROBE MODE: All mouse buttons act as a probe button. Clicking over an object displays its 3D location and data value. COLORS MODE: Selects the color table, contrast and shading of the slices. Color Tables Button: brings up a menu of 16 basic color themes. Contrast Minimum / Maximum sliders: select the low and high data values that are displayed at the extremes of the color table. These values are expressed as a percentage of the maximum voxel value. Raising the minimum value, or lowering the maximum value, increases the contrast. Differential Shading Slider: The slices are differentially shaded to give an illusion of three dimensionality. Setting this parameter to 100% makes the shading exclusively determined by the orientation of the slice. A value of 0 causes shading to be determined exclusively by the data value. ROTATIONS MODE: Selects the orientation of the viewing cube with respect to the operator. Moving these sliders, erases any previously drawn slices. JOURNAL MODE: Enter the name of the journal file to be created or played back in the File Name text window. Use the "Start Recording", "Stop Recording", and "Playback" buttons to record and playback actions. Note: "Start Recording" overwrites any existing files. For the format of the journal file, see the documentation template for slicer. (DOC_LIBRARY, "SLICER") Transparency Slider: Sets the transparency threshold as a percentage of the maximum data value. If set to 0% or 100%, transparency is inactive. Voxel values less than the threshold are not drawn if transparency is on. This slider has no effect when drawing isosurfaces. CREDITS Plasma Jet The datacube used in the demo represents gas pressure out of a time dependent three dimensional hydrodynamic simulation of a narrow angle trail radio jet. From: Dinshaw Balsara, Mike Norman National Center for Supercomputer Applications University of Illinois at Urbana-Champaign Head Courtesy of David M. Stern.