CS 419H -- Fall Quarter 2006

Project #4: Scalar Visualization

150 Points

Due: Wednesday, October 25


This page was last updated: October 19, 2006


Requirements:

Using OpenDX:

  1. Read proj04.dx into the Import module.

  2. Create a display of glyphs to give a general sense of what the data looks like.

  3. Use the ColorMap module to assign colors to the full range of data. You can use whatever color range you think looks good. Be sure that it follows the any-two-colors rule. Create a Colorbar to show how colors relate to the scalar values.

  4. Note from the glyph display that most data values live at the lower end of the scale. Change the "data maximum" in ColorMap to be much lower so you can see more of the data. (You could put a slider on this, but you don't have to.)

  5. Create 2 isosurfaces, one opaque and one translucent. Create 2 sliders to control the isovalue of each isosurface.

  6. Make all Interactors live in a single window.

  7. Create a cutting plane through the data. Display contours on the cutting plane.

  8. Create a caption. Make the caption a different color.

  9. Create a new PowerPoint presentation file:
    1. Put your name, course, and project number (and any other decoration you want) on the first slide.
    2. Put a picture of your network on the second slide.
    3. Put a picture of your Interactor window on the third slide.
    4. Put a picture of the image window on the fourth slide.

  10. Name your .net and .ppt files to be some form of your last name or login. For example, Joe Graphics might name his jgraphics04.ppt and jgraphics04.net.
    Upload your .net and .ppt files to Project04 in the Teach area.

    If this doesn't work, just email me your .net and .ppt files as attachments.

+5 Points Extra Credit

You will initially have all of these visualization elements in the scene together. For +5 points Extra Credit, create Interactor buttons to toggle each on and off. Each element should be able to be toggled independently.

To do this, you will need Toggle and Switch modules to do this. These are shown in Page 60 of the class OpenDX notes. They are also described in the OpenDX User Reference Manual.

+5 Points Extra Credit

Create Interactors to slide the cutting plane perpendicular to its normal.

To do this, you will need to provide the MapToPlane module with a 3-element vector giving the (x,y,z) location a point on the plane. Good values of x and y are 0. What about z?

One thing to do is read z from a Scalar slider. But, then how to combine it into a 3-element vector? OpenDX has a very cool module called Compute which lets you create arbitrary equations in the middle of a network.

Connect the scalar into the first input of Compute. Internally, this is called "a". Set the output of compute to the string: "[0.,0.,a]"

The square brackets create a vector. Send this vector into the second input of MapToPlane.

Compute is mentioned on Page 50 of the class OpenDX notes. It is also described in the OpenDX User Reference Manual.

Grading:

Item Points
Good ColorMap 20
Correct glyph display 20
Correct opaque isosurface 30
Correct translucent isosurface 30
Correct isovalue sliders 25
Correct contoured cutting plane 25
Toggle Button Extra Credit 5
Cutting Plane Interaction Extra Credit 5
Potential Total 160