As suggested in the Preface, where the intent is to provide an overview of computer graphics, emphasizing 2D graphics, the following syllabus is recommended: Chapter 1 The entire chapter should be covered in order to provide a thorough introduction to the concepts and paradigms of the field. The examples presented in Section 1.1 are especially important to discuss. Suggested exercises - 1.1 and 1.4. Chapter 2 The information in Sections 2.1 and 2.2 is the minimum coverage a student should have to appreciate the workings of a raster scan graphics system. The student learns how to draw lines, line sets, and other common primitives. Section 2.2 introduces the concepts and facilities for handling interactive tasks in computer graphics. In selecting a laboratory programming environment for the exercises in this chapter, and for the rest of the course, it is recommended (hardware availability permitting) that the instructor choose either the Macintosh or Windows version of SRGP (see page 559) because the windowing environment is standard for each machine, allowing the student and instructor to avoid dealing with the more complex X Window System environment. Suggested exercises - 2.2, 2.16, and, even though the material is not covered until later, Example 9.2. Chapter 3 Recommended sections are all of 3.1, 3.2, and 3.3. These sections introduce the student to the most basic scan conversion algorithms of raster graphics, those for straight lines and circles. The mathematics is simple and the algorithms are easily implemented. All of Section 3.9, except Sect. 3.9.4, is also recommended, for a brief introduction to the important topic of clipping lines. Suggested exercises - 3.1, 3.2, 3.4, and 3.22. Chapter 4 Sections 4.1 and 4.2 introduce the student to the basics of hardcopy and display technologies. Most of those sections should be covered, but you can easily omit the portions of Sect. 4.2 that discuss display technologies such as liquid-crystal displays, electroluminescent displays, etc. Section 4.3 gives a good overview of complete raster-scan systems, but you can omit Sections 4.3.2 - 4.3.4, if desired. All of Section 4.5, the basics of input devices, should be covered. Suggested exercise - 4.2. Chapter 5 The material in Section 5.1 is key. It should be thoroughly covered, unless the students are already familiar with linear algebra. Matrix operations introduced in that section are used extensively in later chapters. Section 5.2 introduces the basic 2D transformations of translation, scaling, and rotation. Section 5.3 builds upon those concepts by introducing homogeneous coordinates and generalizing the transformations. Finally, in Section 5.4, we show how the basic transformations can be combined, a process known as composition. All of these recommended sections should be completely covered. Furthermore, if the instructor plans to cover more aspects of 3D graphics than is suggested, it may be advisable to cover Sections 5.7 and 5.8 as well. Suggested exercises - 5.1, 5.2, 5.3. Chapter 6 Assuming the instructor wishes to touch briefly on 3D graphics, it is recommended that at least Sections 6.1, 6.2, and 6.3 be covered. This will introduce the student to the synthetic camera concept, provide an introduction to the most common types of projections, and give an overview of 3D view specification for parallel orthographic and perspective projections. In addition, this will introduce important terms such as view reference point, view plane normal, etc. If, in addition, the instructor covers Section 6.4, from the beginning through 6.4.2, it will be possible to discuss specific cases of parallel and perspective viewing situations. Suggested exercises - none. Chapter 8 Chapter 8 is easy reading and is an excellent supplement to Section 4.5, input hardware. Additional input hardware is introduced, including the fascinating DataGlove, a device that plays an important role in the field of virtual reality. Most of Chapter 8, however, deals with logical input operations, concepts that abstract the characteristics of specific devices. Many of these concepts will be familiar to users of programs such as MacDraw on a Macintosh. Suggested exercise - 8.1. Chapter 9 Chapter 9 may seem imposing, but much of the material is really very simple. Moreover, programs to manipulate parametric cubic curves are easy to write and students find it enjoyable to produce such elegant and surprising shapes with little effort. Section 9.1 describes how polygon meshes can be used to approximate complex shapes. Section 9.2, from the beginning, through 9.2.3, provides the foundation for defining Hermite and Bezier parametric cubic curves. Example 9.2 is a complete program (found in Code/Chap09) for interactively specifying Bezier curve segments. An interesting exercise would be to modify Example 9.2 to allow other types of curves to be generated. Suggested exercises - 9.1, 9.2, 9.3. Chapter 11 Since color is such a common and important part of modern computer graphics, it is strongly recommended that the instructor devote some time in the course to introducing the basic concepts of color. The material in Sections 11.1 and 11.2 serves as a brief but interesting overview of light and color. Section 11.1 deals with achromatic light, where color is absent. Here we encounter several interesting ways to represent continuous tone images, using in most cases, just black and white to display an image. Students are particularly intrigued with the Floyd-Steinberg error diffusion method for representing images. It is easy to program and produces striking results. If the instructor needs sample images for such a programming exercise, consult CGResources in the Software directory. Several sites offering image collections are mentioned there. Section 11.2 discusses chromatic color, both its physical and psychological aspects. Color coordinate systems are introduced, with special focus on the CIE system. Suggested exercise - Write a program that uses the Floyd-Steinberg error diffusion algorithm to approximate the data in an 8 bit/pixel image on a bilevel device. Chapter 12 Here the instructor is free to cover additional topics as time and student ability dictate.