Design Due: Friday, Oct. 29, 1:30 pm
Limb Movement and Demo Due: Friday, Nov. 5, 1:30 pm
Late Penalty:
10 points per 24 hour period
Programming Project #5 (Group)
3D Transformations

Points Possible: 200 (each group member receives same number of points;  bonus points may be awarded to individuals if warranted)

The Assignment:

Using the traditional affine transformations: translate, scale, and rotate for a three-dimensional object, design and manipulate either an articulated robot arm, or a walking robot.

Details:

The 100 point design (due Oct. 29) must be made from transforming compositions of basic objects.  Each component of your design should be made from transformations around the origin an then moved to its proper position, again using transformations.   You will probably want to make use of shapes provided by glut (glutWireCube, glutWireSphere, etc) to simplify your work. Use the table exercise of Oct. 22 as a guide.  Although you will eventually be putting a "skin" on the robot, for this project please use wireframes rather than solid objects.

The robot arm  may be considered as composed of an upper arm connected to a main body at the shoulder; a lower arm connected at the elbow to the upper arm;  a hand connected at the wrist to the lower arm;  fingers  made up from three sections connected to the hand.

The walking robot may be considered similarly using only the leg movement for animation.  Each leg consists of an upper leg connected to a main body at the hip; a lower leg connected at the knee to the upper leg;  a foot connected at the ankle to the lower leg.  (There is no need to put toes on the foot, but you will need to have two legs.)  

The second part of your project is to simulate movement through ASCII keys to move each component of your robot.  For example, you could use L to move upper left leg 5 degrees in one direction while l could move upper left leg 5 degrees in opposite direction. 

Finally, put together a sequence of moves to demonstrate what your robot (either the articulated arm or the walking robot) can do!  This part can earn you bonus points if you dazzle me.  For example, the robot arm could grasp a sphere (or teapot) from the top of a table and lift it.  The walking robot could climb a hill or step up onto a box, or dance, etc.


Submit:

Please put everything in your Dropbox folder, project5 directory, along with your makefile for the project and any other files necessary for your project to run.  Make sure you include every member of the group in all documents.  It is only necessary for one member of each group to submit the project, but make sure you tell me which member.