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.