While most of CS 410 is centered around 3D graphics, there is a short 2D drawing module based upon the HTML5 Canvas drawing API. In this assignment you are going to modify a simple webpage which uses this API to produce a drawing. You will not be graded on artistic merit, but you will be graded according to your apbility to successfully incorporate distinct aspects of the 2D drawing context into a drawing of your own design.

You are not expected to be a master of HTML or CSS in order to complete this project. Indeed, you are being provided three files that provide essentially everything you need to begin directly focusing upon 2D drawing. Keep in mind that you are being asked to change the names of these files in order to include your last name in each file name. More will be said about this below.


The visual composition of your drawing is yours to design. There are two requirements. First, it must be your own and not a copy of anyone else's work including other students or other online resources (tutorials, etc.). Second, the drawing should display without error when your html page is loaded in a browser. Third, your javascrip code must include the elements enumerated here:

  • At least two instances of arcs.
  • At least two instances of rectangles.
  • At least two polygons with five or more sides.
  • The use of at least six distinct colors in conjunction with both filled and not filled shapes.
  • Demonstrated use of repeated elements. In other words, portions of your drawing replicated at least twice using changes in the context's coordinate system to make each replicate appear in a distinc and seperate portion of the drawing.
  • Something moving, literally. Some portion of your drawing must be animated and thus change automatically over time.

The template files for the HTML, CSS and JavaScript code upon which you should build are available here:


Make a tar file that includes your functioning webpage(s). Specifically, after renaming the three files appropriately replacing 'myname' with your own last name, tar up (or use zip) these three files and submit them through CANVAS.


There is no “late period”. The program is due when it is due. All work you submit must be your own. You may not copy code from colleagues or the web or anywhere else. Cheating will not be tolerated, and will be handled in accordance with university and department policy.

Addendum (Last update 9/16/16)

No addendum at this time.