The COM1370 Syllabus, 2/1/98

This version lists all topics we will cover, by chapter and date. In addition, it gives the assignments, both exercises and machine problems, through to the Midterm Exam on 2/19.

**** January ****

Thurs 1/8 Introduction to graphics and the course.

Mon 1/12 Overview of graphics. Reading due: Chap. 1.

Tues 1/13 Graphics devices and systems. Reading due: Chap. 2. Review of my sampler demo code. Graphics programming in C++ on the Macintosh. Exercise due: You are to run all the compiled demos in the Samplers folder (make local copies first). Write up some notes on the most interesting techniques you saw, how they look and behave and why they're interesting. Write in full sentences. (This doesn't mean be wordy.)

Thurs 1/15 Exercise due: Code commenting and design: Part 1: You are to study my source code for my sampler in the Samplers folder, comment it carefully, and turn in hardcopy of your commented code. To do a proper job, you'll have to study Macintosh Toolbox and QuickDraw references. Part 2: Write a brief description of your preliminary Sampler design ideas and strategies.

Mon 1/19 Graphics devices and systems (continued).

Tues 1/20 Use of the Code Warrior IDE (Integrated Development Environment) and resources such as Inside Macintosh and the Toolbox Assistant.

Thurs 1/22 Line and area-fill output. Machine problem due: Write your own Graphics Sampler. You are to create a program with at least 12 windows that subdivide the screen, and in each one, your program is to draw some design or animation. Break all your drawing into a function for each window which in turn calls other functions, that is, make your code as modular as you can.

Mon 1/26 Output primitives - line-drawing algorithms. Reading due: Chap. 3, pgs. 84-92, 97-102 (skim).

Tues 1/27 Filled areas -- scan-line and boundary filling. Reading due: Sec. 3-11.

Thurs 1/29 Filled areas (continued).

**** February ****

Mon 2/2 Antialiasing. Reading due: Sec. 4-8 (skip pixel phasing).

Tues 2/3 Intro. to transforms. 2D transforms. Reading due: Chap. 5 pgs. 184-195 and math appendices, A-1, A-2, and A-4.

Thur 2/5 From 2D to 3D. The sample 3D implementation is discussed, along with the 3D machine problem. Reading due: Chap. 9, Chap. 10, pgs. 305-309.

Mon 2/9 The visible surface problem in 3D. Readings due: Chap. 13, Introduction and sections 13-1, 13-2, and 13-6.

Tues 2/10 Illumination modeling and computations. Properties of surfaces and reflection. Reading due: Chap. 14 Introduction and Secs. 14-1 and 14-2. Machine problem due: Rotating a 2D polygon based on the Lobs demo code.

Thurs 2/12 Shading models for surfaces (polygon rendering). Reading due: Sec. 14-5.

Mon 2/16 Ray tracing - another way to render images. Reading due: Sec. 14-6.

Tues 2/17 Review for Midterm Exam. Machine problem due: 3D tumbling object with surface decorations.

Thurs 2/19 MIDTERM EXAM -- The exam will be based on all material covered through Thursday 2/12, both in-class discussions and the required readings. Closed-book, closed-notes.

Mon 2/23 Go over results of Midterm Exam.

Tues 2/24 Introduction to interactive techniques -- menus and drawing. Sample code handed out. Overview of the interactive application machine problem.

Thurs 1/26 Further details on programming for interaction.

**** March ****

Mon 3/2 Keeping things in their windows -- Clipping lines and polygons. Reading due: Secs. 6-5, 6-6, 6-7 (pgs. 225-230), 6-8 (pgs. 237-243, but can skip code).

Tues 3/3 More general objects -- handling curves and curved surfaces. Reading due: Sec. 10-6, 10-8.

Thurs 3/5 Animation. Reading due: Chap. 16.

Mon 3/9 Catch-up time.

Tues 3/10 More catch-up time. Machine problem due: Interactive drawing application.

Thurs 3/12 Review for Final Exam. The final exam is cumulative, based on all material covered throughout the course, with emphasis on material not covered on the Midterm.

Back to teaching Gateway