ICS 186A Winter 2003: Assignment 3 (Due - Jan 24th '03, 17:00) Aim ------- Write a program to display two cubes - Spinner and Revolver, that satisfy the following constraints: 0) Spinner should rotate about an axis through its center, parallel to any edge. 1) Revolver rotates about the same axis as Spinner revolving around Spinner. 2) Revolver DOES NOT rotate about an axis through its own center. 3) The frequency of Spinner rotating about its own axis should be the same as that of the rotating Revolver. This means, for every complete revolution of Revolver around Spinner, Spinner should itself have completed 360 degrees. 4) Spinner should be larger than Revolver. 5) Spinner and Revolver should NOT be of the same color. Your program should support interactive viewpoint manipulation. i.e. The user should be able to use the mouse select viewpoint position in space. - Use glLookAt for this. The method used in last weeks assignment was to perform Model Transformations on the object. Now we want to change the view position. So the old method is not what is expected. Hints that MIGHT be useful -------------------------- 0) Use glTranslate, glRotate, glScale - Look them up in the OpenGL reference 1) OpenGL uses a local co-ordinate system, and POST-MULTIPLIES successive transformations. 2) Think about how the mouse motion should affect the image. Look up glLookAt 3) Reuse any part of the code from last weeks assignment that you think will be useful.