Project 3: Events and user controls

This project is about event-driven programming and user control of graphics.  It may be able to use your earlier geometry or it may need you to create some new geometry, so think about this very carefully.

Using an appropriate geometrygeometry, create an image that the user can interact with using both keyboard and a menu.  The keyboard can be used to control rotations (as you have seen in examples) or to turn certain features on or off (choose smooth or flat shading, turn on or off lights) while the menu can be used to present options (choice of colors, choice of lighting or synthetic color, which synthetic color model you would use, which function you would graph, and the like).  Here are some suggestions:

       2a (Mathematics) Choose functions and choose what kind of surface rendering you would use.
       2b (Chemistry) Choose which of several options of molecule you will present (basically, choose which molecule file you will read and display).
       2c (other) Choose a display, such as a function or process (think of the temperature transfer process) and select how you will encode and present information to the user.

Examples of program interaction have been given in class to show what each can look like in operation.  Use them to figure out what kind of controls you want the user to have.

Extra credit (up to 25 points):  use the MUI tools to add a control panel to your project.  This is not required, but it can be a really useful addition to any control processes.  A MUI source example from Mike Bailey at SDSC has been included to help you see how to use MUI.

Due date:  April 4, 2000.  The usual comments on code, display, and hand-in processes apply.  Be SURE that you include instructions for controlling the program in your documentation so your instructor can exercise your project fully!