- Instructor: Dr. David Breen
- E-mail: david_AT_cs.drexel.edu (replace _AT_ with @)
- Office: Korman 297
- Office Hours: Tue 3:00-5:00
- Class Hours: Thur 6:00-8:50
- Class Location: Matheson 304
- Phone: (215) 895-1626
- Grading Assistant: Ben Roberson
- E-mail: mono_AT_drexel.edu (replace _AT_ with @)
Course Page :
http://www.cs.drexel.edu/~david/Classes/CS585
Recommended Textbooks:
- Introduction to Computer Graphics, by James D. Foley, Andries van
Dam, et al. Addison-Wesley Pub Co, 1994; ISBN: 0201609215
- Computer Graphics with OpenGL, Donald Hearn, M. Pauline Baker, 3rd
Edition, Prentice Hall, 2004; ISBN: 0-13-015390-7
Suggested Supplemental Text:
- Curves and Surfaces for CAGD, 5th ed., by Gerald Farin. Published
by Morgan-Kaufmann
E-mail List:
cs585_AT_lists.cs.drexel.edu (replace _AT_ with @)
To subscribe email address to class email list: send an email message to
majordomo@lists.cs.drexel.edu
with the words "subscribe cs585" in the body of the email message. To
unsubscribe email addresses from the list, use "unsubscribe cs585".
It is University policy that you read your official
Drexel email; it is the course policy that you read it at least once per
day.
Course Objective
Computer Graphics represents a vast technical field,
ranging from mathematics and geometry topics to computer hardware and
software engineering topics to rendering, animation and virtual
reality, far more than can be comprehensively covered in a 10 week
term. Computer Graphics I is designed to provide students with an
introduction to the subject through detailed coverage of the
mathematics and implementation of 2D and 3D curves and surfaces. The
course culminates with a focus on 3D viewing
and visible surface algorithms.
Pre-Requisites
Students are required to have taken CS260
(Introductory Data Structures and Algorithms) and Math 201 (Linear
Algebra). You will find this course extremely difficult if you do
not have strong (B or better) linear algebra skills. No review of
linear algebra will be given in this class. Students are assumed to
have excellent knowledge of programming. Students can use whatever
programming language they wish (C, C++, Java, Lisp, etc) for the
assignments in this class with the following caveat: you will need to
turn in both source code and an executable file for testing and
evaluation. Code must run, without dynamic linking, as a single
command-line process on Solaris OS. Arguments passed to the
command-line will parameterize assignments; hence you'll need to
read command-line arguments (argc, argv) and parse input files. This
course is mathematically intense and implementationally challenging.
You will be required to implement complex mathematical calculations as
a regular part of your assignments.
- Assignments (80%)
- Presentation (10%)
- Final exam (10%)
I will use the standard grading scale of 100→ 90 (A), 89→ 80 (B),
79→ 70 (C), 69→ 60 (D), else (F).
Please also note that
incompletes will not be given for this course.
Assignments
Students
must work on the assignments
individually. No geometry or graphics libraries may be used in the
homework assignments. 1 point per day (max of 3 points) will be deducted
from late
assignments. You will be given a grade of
0 if an assignment is not
turned in before the next assignment is due.
The programming assignments must be submitted via the 'submit' command
on queen.cs.drexel.edu before 11:59 PM on the due date.
Note: If the TA or instructor finds strong evidence of cheating
on assignments and/or the final examination, the student(s) involved
will receive an "F" in the course, and a memo describing the cheating
will be added to their student record. Be very careful, it is not
worth the risk.
Note: Your source code for all programming assignments will be
run through a plagiarism detection system. This program uses compiler
techniques, which are invariant of syntax and style. If you are
sharing code with other classmates, you will get caught.
Presentation
Every student will make a 10 minute presentation based on a
research paper from the
SIGGRAPH Proceedings
or the
Seminal
Graphics Collection
Students should choose a paper from 1993 or earlier on a subject that
will not be covered in class by Professor Breen.
Presentation Schedule
- April 22 - Craig Schroeder
- April 29 - Arthur Widmann
- May 6 - Jason Dobies
- May 13 - Peijun Ye
- May 13 - Theodore Watson
- May 20 - Suchindra Sandhu
- May 27 - Brian Cosgrove
Examinations
There will be a final exam on the material from class that is
not covered by the assignments.
Calendar
Week 1 (March 29 - April 2)
- Reading Assignment - F et al.: Chapter 1, 3.1, 3.2, 3.9
- Reading Assignment - H&B: Chapter 1, 2.1→2.8, 3.1, 3.5, 3.7, 3.13, 6.5→6.7
- April 1 - Lecture :
Introduction 6 per page
- April 1 -
Lecture:
Lines 6 per page
- XPM Manual
Week 2 (April 5 - 9)
- Reading Assignment - F et al.: Chapter 5
- Reading Assignment - H&B: 15.1, 15.4, A.1→A.2, A.5, A.7, 5.1→5.6, 5.8→5.16, 5.18, 6.1→6.3
- April 8 -
Lecture:
2D-Transformations 6 per page
- April 8 -
Lecture:
3D-Transformations 6 per page
Week 3 (April 12 - 16)
Week 4 (April 19 - 23)
- Reading Assignment - F et al.: 9.2→9.2.3
- Reading Assignment - H&B: 3.11, 8.8→8.10
- April 22 - Lectures:
Introduction To Curves 6 per page
- April 22 - Lecture: Bezier 6 per page
- April 22 - Craig Schroeder presentation
Week 5 (April 26 - 30)
- April 26 - Assignment 2 Due
- Reading Assignment - F et al.: 9.2.4→9.2.6
- Reading Assignment - H&B: 8.12, 8.14→8.17
- April 29 - Lecture:
Bsplines and NURBS 6 per page
- April 29 - Lecture: Drawing NURBS 6 per page
- April 29 - Arthur Widmann presentation
Week 6 (May 3 - 7)
- Reading Assignment - F et al.: 3.7, 3.14, 6.1→6.4
- Reading Assignment - H&B: 4.5→4.6, 4.17, 10.9, 7.1→7.9
- May 6 - Lecture:
Thick Primitives 6 per page
- May 6 - Lecture: Introduction to
3D Viewing 6 per page
- May 6 - Jason Dobies presentation
Week 7 (May 10 - 14)
- May 10 - Assignment 3 Due
- Reading Assignment - F et al.: 6.5→6.7, 13→13.4
- Reading Assignment - H&B: 7.11, 9.1→9.13
- May 13 - Lecture:
Math of 3D Viewing 6 per page
- May 13 - Lecture: Culling and
Z-Buffering 6 per page
- May 13 - Peijun Ye presentation
- May 13 - Theodore Watson presentation
Week 8 (May 17 - 21)
- Reading Assignment - F et al.: Chapter 10
- Reading Assignment - H&B: 8.1, 8.19→8.22
- May 20 - Lecture:
Solid Models Part I 6 per page
- May 20 - Lecture: Solid Models Part
II 6 per page
- May 20 - Suchindra Sandhu presentation
Week 9 (May 24 - 28)
- May 24 - Assignment 4 Due
- Reading Assignment - F et al.: 9.3, 9.4, Chapter 11
- Reading Assignment - H&B: 8.3→8.5, 8.7, 8.11, 8.13,Chapter 12
- May 27 - Lecture:
Color 6 per page
- May 27 - Lecture:
Surfaces 6 per page
- May 27 - Brian Cosgrove presentation
Week 10 (May 31 - June 4)
File last modified on May 21, 2004.