CMSC 435: Introduction to Computer Graphics


Computer Science and Electrical Engineering Department
University of Maryland, Baltimore County

Fall 1998

M,W 3:30-4:45, CP 206 


Welcome to the CMSC 435 Home Page !

This page will be updated throughout the semester with new course information.

Important Information

The following are some sample images which YOU will be able to create at the end of this course (except for the steam).


Here are few Computer Graphics related sites which you might want to check out.


CMSC 106, 341, Math 221, or permission of instructor.

Course Description

Introduction to display hardware, interactive techniques, 2D graphics, 2D viewing algorithms including transformations, windows, viewports, and clipping, 3D perspective graphics including hidden surface removal, shading, and illumination techniques.


Introduction to Computer Graphics, Foley, van Dam, Feiner, Hughes, Phillips, Addison Wesley, 1993. Additional reading of papers from the literature may be required.


The lab assignments will require the use of UNIX and the C programming language. A tentative list of assignments is given below. Lab assignments will be due at MIDNIGHT of the due date.
Lab Schedule 
Lab  Weight  Description  Week Assigned 
Lab1  4%  Line/Circle Algorithm 
Lab2  7%  Clipping/Window to Viewport Transformation 
Lab3  8%  General 2D transformations 
Lab4  16%  Interactive 3D viewing transformation 
Lab5  10%  3D Rendering by Ray Tracing  12 

Late Policy

10% per 24 hours late. No labs accepted after 5 days past the due date. Labs will be submitted electronically. Labs are expected to be worked on individually. Collaboration in any form will not be tolerated. Any form of collaboration or copying of labs will be dealt with according to university policy.

Examination Policy

Exams are closed book and fixed duration. Make-up exams will only be given when a student is prevented from taking the exam due to unforeseen circumstances (e.g., sickness), and formal proof will be required to prove the prevailing circumstance.

Academic Honesty

Cheating in any form will not be tolerated. You may discuss programming assignments with anyone. However, any help you receive must be documented. At the beginning of your program, you must include a comment indicating the sources you used while working on it (excluding course staff and text), and the type of help you received from them. If you received no help, say so. Failure to include this comment at the top of your program will result in your program being returned ungraded.


There will be local newsgroups named umbc.course.cs435 for this course. We will post messages to this newsgroup and assume that you will read them. You should also feel free to post your own messages to this newsgroup if you feel you have something that would be useful and appropriate to share with the rest of the class. If you do not know how to read news, you should find out by reading the man page for the rn command or Netscape.

Grading Policy

Grades will be assigned on the basis of accumulated points. The weighting is as follows: As per University policy, incomplete will be granted only under extraordinary circumstances; students who are enrolled after November 11 (the last day to drop a class) should be prepared to receive a grade of A-F.

Letter Grades

The following general range will be used:

Course Schedule

General Syllabus 
Week  Topics  Chapter 
Introduction to Graphics System components & graphics hardware  1, 4.2, 4.3 
2-3  Line and Circle drawing  3.2-3.3 
3-4  2D transformations, matrices, 2D spaces, windows, viewports  5.1-5.6 
4-5  2D clipping, shading, filling  3.4-3.6, 3.8-3.11 
6-7  transformation hierarchy, graphics packages, Midterm 
7-8  2 1/2D & 3D spaces, 3D transformations, polygon scan conversions  5.7-5.9 
8-10  3D viewing algorithm, perspective 
10-13  3D clipping, hidden line & surface removal  12, 13 
13-14  Illumination models, shading,animation  14 
15  Intro to User Interfaces / Advanced Modeling 2.2, 8, 9 

Detailed Class Schedule (Tentative) 



Lecture Topic


1 Aug. 31 Course Intro
2 Sep.  2 Graphics Hardware
3 Sep. 9 Line Drawing Assign Lab 1
4 Sep. 14 Circle Drawing, 
Intro to 2D transf.
5 Sep. 16 2D Transformations,
Intro Clipping
6 Sep. 21 2D Clipping
7 Sep. 23 2D Filling Assign Lab 2
8 Sep. 28 Guest Lecture
9 Sep. 30 Simple Fractal Transforms
10 Oct. 5 Graphics Packages, 2 1/2 D Animation
11 Oct. 7 Hierarchical Transformations Assign Lab 3
12 Oct. 12 Introduction to 3D Transformations
13 Oct. 14 3D Transformations
14 Oct. 19 Midterm Exam
15 Oct. 21 Guest Lecture
16 Oct. 26 Review Exam, 3D Viewing Assign Lab 4
17 Oct. 28 3D Viewing Continued
18 Nov. 2 3D Clipping
19 Nov. 4 Backface Removal
20 Nov. 9 Illumination/ Dithering
21 Nov. 11 Intro Hidden Surface Removal
22 Nov. 16 Hidden Surface Removal Assign Lab 5
23 Nov. 18 HSR/ Implementing Illumination
24 Nov. 23 Smooth Shading Effects
25 Nov. 25 Advanced Lighting Effects
26 Nov. 30 Introduction to User Interface Design
27 Dec. 2 Advanced Modeling Techniques
28 Dec. 7 Advanced Modeling Techniques
29 Dec. 9 Course Review

David S. Ebert

August 1998