An introduction to interactive computer graphics, including: bit mapped graphics (low level routines), line drawing algorithms, circle generators, two-dimensional transformations, clipping and windowing, solid area scan conversion, graphics packages and hardware, three-dimensional transformations, and graphics animation.
Prerequisite: C.S.300 (Math 206 Helpful)
Professor: Douglas J. Ryan
Office: Strain 201
Office Hours: 11:00 - 12:00 M-F
Phone: 357-6151 x2335
Book(s): Computer Graphics The Principles Behind The Art and Science by Cornel Pokorny
Approximate Course Grading:
1) Programming Projects (250 pts)
2) 2 Midterms (200 pts)
3) 1 Final (100 pts)
4) Orals (50 pts)
Total (600 pts)
Percent Breakdown:
92-100 (A) 90-92 (A-)
87-90 (B+) 82-87 (B) 80-82 (B-)
76-80 (C+) 68-76 (C) 65-68 (C-)
62-65 (D+) 55-62 (D)
0-55 (F)
Program Grading:
1) 70% successful execution
2) 20% acceptable structure and style (no redundant code, looking
for speed and efficiency)
3) 10% documentation
Policies:
1) A program can be turned in up to 48 hours late with a penalty
of 20% of the program points. Any program turned in more than
48 hours late will not be accepted.
2) A program that does not successfully assemble/compile or produces
no output loses 70%.
3) The instructor reserves the right to raise or lower a student's
grade based on class participation and attendance.
4) To pass the course, you must attempt and turn in each assignment
on or before the assignment's late date.
5) No early or late exams/finals will be given. Do not make early
Thanksgiving/Spring Break or end of term arrangements.
6) Anyone caught cheating on any project, exam, or quiz will receive
negative credit for the project, exam, or quiz. As an example,
if a project was worth 20 points then a -20 would be recorded.
A second occurrence of cheating results in an automatic "F"
for the course.
7) Neither computer failure, software failure, nor lack of computer
access are accepted as excuses for late programs; therefore, start
work on the programs as soon as they are assigned, don't put them
off until the last minute!!! Further, corruption of programs
due to bad disk media is also not accepted as an excuse for late
programs; therefore, always keep a current backup of all
programs on a separate disk!!!
Tentative Course Outline
Chapter 1
(a) Mathematics review & overview
(b) Assembly language revisited
Chapter 2
(a) Bit-Mapped graphics (text, low resolution, and high resolution
graphics)
(b) Discussion of structural line drawing algorithms
(c) Discussion of conditional line drawing algorithms
(d) Polygons and pattern fill algorithms
Chapter 3
(a) Discussion of circle generating algorithms
(b) Simple graphics packages
(c) Introduction to Object Oriented Programming
(d) Classes in C++
Chapter 4
(a) The mathematics of two-dimensional windowing
(b) Clipping algorithms for lines and polygons
Chapter 5
(a) Basic two-dimensional transformations
(b) The mathematics of concatenation of transformations
(c) Basic three-dimensional transformations
Chapter 6
(a) Perspective projections
(b) Three-dimensional windowing and clipping
Chapter 11
(a) Backface removal
(b) Hidden surface removal
Special Topics: Chosen from the remainder of the book
(a) Light and color
(b) Fractals
(c) Advanced hidden lines and surfaces
(d) Reflections
(e) Shading
(f) Shadows
(g) Ray Tracing
Final (December 12, 1995 (Tuesday); 12:00 - 2:30pm)