CS 3014 Computer Graphics
Project #1
Points Possible: 50 (Part 1) + 50 (Part 2)
Due (Part 1): Noon, Monday, September 20, 2010
Due (Part 2): Class Time, Wednesday, Septembr 22, 2010
Details:
Part 1 (50 points)
Write a program that will allow the user to select points on the screen
via left mouse click, resulting in a solid rectangle being drawn with those
two points as opposite corners.
Your program should
10 pts:
Open a window on the screen using as much real estate on the screen as
possible while maintaining an aspect ratio of width/height
approximately equal to 19/13. The clearing color of the
screen should be white. Choose parameters for glOrtho so that
your "frame" corresponds to the
"window" you opened, allowing for a 1-1 correspondence between
points
in your frame and pixels on the screen.
10 pts: Allow the user to
select two points on the screen with a left mouse click. When the
first point is selected, it should appear on the screen in your color
choice for the rectangle; when the second point is selected, the solid
rectangle should immediately be drawn to the screen.
10 pts: Allow the user to
keep selecting pairs of points and drawing more rectangles. Later
rectangles might overlap or be drawn on top of earlier ones. Rule
is: latest one wins.
10 pts: Allow the user to select the color of each
rectangle, if desired. How this is accomplished is up to you, but
you must have at least the basic colors available: black, red,
green, blue, yellow, white (for pseudo-erasing). The selection
may be from keyboard (r for red, etc.), dropdown menu, or some other
method (glui?) as long as it does not employ interacting with cin and
cout statements from the terminal window.
10 pts: Allow the user to exit the program gracefully using the ESC key.
Part 2 (50 points)
Using your program from part 1, produce a
pixel art design.
When you are happy with your product, capture a screen shot of it and
use the Epson color printer in the lab to produce a 19X13 color
print. In keeping with the theme of the eBoy art on the wall in
our lab, your design may be displayed on the wall. If
your design
is displayed, you get 50 points; if it is
not displayed,
you will get less than 50 points, to be determined entirely
subjectively by me. See me for assessment before printing your
art.
Inspiration:
Pixel Art Making a Comeback
Youtube Documentary about Pixel Art
eboy's site
Extra Credit (10 points)
Allow the user to select using rubber rectangles: those that grow and shrink as the user moves the mouse.