CS426 Assignment 1

Building a User Interface

Due 1159 PM Friday, October 4


In this assignment you will write a simple 2D shapes editor. This will involve programming both in Tcl/Tk and OpenGL.


Features

Your program will at least need to support the drawing of simple polygons through a user interface of your choice. Of course more credit is to be gained if you've learned from the Design Considerations we talked about in class.

Other basic shapes you might add are circles, rectangles, etc.

The user should also be able to change shape attributes, like colour, line thickness, etc.


Grading

If you implement all the basic stuff with two extra shapes, and at least one changeable attribute per shape, and everything is controlled by a consistent user interface with plenty of feedback, you score 8 out of 10 points.

Points will be subtracted for errors, inconsistencies, missing features, etc. You may work in the language of your choice (probably C/C++), and are expected to submit structured, commented, bug-free (ahem) code. Points will be subtracted for sloppy coding.

More points can be gained by implementing more advanced features, e.g. undo, save & load, fancier shapes...

Please look at the general grading info on the course information page.


What to submit

Submit your source files and a makefile, using the submit program in /u/cs426/bin. For example:

/u/cs426/bin/submit 1 makefile assn1.c assn1 tkAppInit.c assn1tcl.c

You can unsubmit files like this:

/u/cs426/bin/unsubmit 1 assn1.c

Please don't submit binaries, image files, or core files. Also make absolutely sure that your program actually compiles when someone types "make".


Miscellaneous

Note that the Graphics Lab on the fourth floor of the CS building cannot be used for doing assignments in this course, except maybe the final project. Graduate student can use the Graphics Lab.


CS 426 (Computer Graphics), CS Department, Princeton University
Last modified: Fri Sep 20 16:43:07 1996