Claurissa Tuttle
Graphics 6620


Project 1.

Required image:



Code listing:

Program 1 zipped
Program 1 with extra credit zipped

Design Choices:

I distinguished between points and vectors by making separate classes for each of them. I put them in separate classes because it was recommended and it might make things easier later.
I chose to put all of the overloaded operators that dealt with both points and vectors in with the code for the vector class so I would know where to find them later.
I chose only to support ppm images because it's easy enough to convert to other formats with an image viewer.

Extra Credit:


I increased the radius of one of the circles in order to show the difference between updating periodically and updating all at once.

The first image shows single frame updating and the second image shows periodic updating where the image was updated after each line of rendering.

Time it took:

The assignment took me 3 hours.
The extra credit took me 9 hours.
The webpage creation took me a little less than an hour.

Difficulty:

The assignment wasn't too hard.
The extra credit was quite time consuming because it took me a while first of all to get glut and glui to work. Then, it took quite a while to figure out how to get it to update periodically. If I had realized beforehand that displaying could only be done at the end of a function and not in a loop, that would have shortened the time it took.