CS-535

COMPUTER GRAPHICS
Spring 2002
MWF 10:00 - 10:50 am (CB 201)

professor:
Dr. Fuhua (Frank) Cheng
763B Anderson Hall
Phone: (859) 257-6760
Email: cheng@cs.engr.uky.edu
URL: http://www.cs.engr.uky.edu/~cheng/

Office Hours:
MWF 11:00am - 1:00pm and by appointment
Lab:
CSLAB Sun Workstation Lab
Location: 202 EE Annex
Hours: Sunday 12:00pm - Friday 10:00pm, Saturday 9:00am - 7:00pm
Text:
Computer Graphics: using OpenGL, 2nd Edition
Author: F.S. Hill, jr. (Publisher: Prentice Hall)
ISBN: 0-02-354856-8
and my notes (can be downloaded from my website)
Reference:
Computer Graphics: Principles and Practice, 2nd edition in C
Authors: Foley, van Dam, Feiner, and Hughes
Publisher: Addison-Wesley
ISBN no: 0-201-84840-6
OpenGL: Programming Guide, 2nd Edition
by M. Woo, J. Neider, and T. Davis (Publisher: Addison Wesley)
ISBN no: 0-201-46138-2
Grading Policy:
Programming Assignments* ----- 40%
Midterm ----- 20%
Final ----- 20%
Homework ----- 20%

* Programming assignments must be done in C or C++, on machines
in the CSLAB using OpenGL as the supporing library.
Late Penalty:
I will accept programs and homework up to 1 week (5 working days) late
for a penalty of 40% (8% each day overdue). Programs and homework more
than one week late will not be considered for a grade.
Scale (for undergraduate students):
86 -100 .... A
76 - 85 ..... B
66 - 75 ..... C
56 - 65 ..... D
0 - 55 ....... E
Scale (for graduate students):
90 -100 .... A
80 - 89 ..... B
70 - 79 ..... C
Plagiarism and Cheating:
Plagiarism and cheating are serious academic offenses.
The minimum penalty for those academic offenses is final grade E in
the course. The university regulations pertaining to this matter
can be found at http://www.uky.edu/StudentAffairs/Code/
Of particular relevance is Part II, SELECTED RULES OF THE
UNIVERSITY SENATE GOVERNING ACADEMIC
RELATIONSHIPS, Section 6.3 that can be found at
http://www.uky.edu/StudentAffairs/Code/part2.html
-------------------------------------------------
(These rules in particular say:
6.3.1 PLAGIARISM All academic work, written or otherwise, submitted
by students to their instructors or other academic supervisors, is
expected to be the result of their own thought, or self-expression.
In cases where students feel unsure about a question of plagiarism
involving their work, they are obliged to consult their instructors
or the matter before submission.
When students submit work purporting to be their own, but which in
any way borrows ideas, organization, wording or anything else from
another source without appropriate acknowledgment of the face, the
students are guilty of plagiarism.
Plagiarism includes reproducing someone else's work, whether it be
published article, chapter of a book, a paper from a friend or some
file, or whatever. Plagiarism also includes the practice of employing
or allowing another person to alter or revise the work which a student
submits as his/her own, whoever that other person may be. Students may
discuss assignments among themselves or with an instructor or tutor,
but when the actual work is done, it must be done by the student
and the student alone.
When a student's assignment involves research in outside resources
or information, the student must carefully acknowledge exactly what,
where, and how he/she has employed them. If the words of someone else
are used, the student must put quotation marks around the passage in
question and add an appropriate indication of its origin. Making
simple changes while leaving the organization, content, and phrase-
ology intact is plagiaristic. However, nothing in these Rules shall
apply to those ideas which are so generally and freely circulated
as to be a part of the public domain.
6.3.2 CHEATING Cheating is defined by its general usage. It includes,
but is not limited to, the wrongfully giving, taking, or presenting
any information or material by a student with the intent of aiding
himself/herself or another on any academic work which is considered
in any way in the determination of the final grade. Any question of
definition shall be referred to the University Appeals Board.)
-------------------------------------------------
I want to emphasize that in this class students are allowed to discuss
ideas and are allowed to help others by explaining concepts and
possible solutions. However, all the work that is submitted must be
performed by the students individually. Any sharing of electronic files,
printouts and other materials developed by the students is not allowed.
If any fragments of text appearing in books, journals, conference
proceedings, web pages, etc. are used, students must provide appropriate
citations. Any help from others must also be acknowledged.
Course Description:
This course presents the basic principles for the design,
use, and understanding of graphics systems. The hardware and
software components of graphics systems are examined.
Algorithms for creating and manipulating graphics display,
techniques for implementing the algorithms, and their
use in diverse applications are discussed.
The course covers two dimensional graphics such as rasterization
of lines/polygons/curves, clipping, anti-aliasing and three
dimensional graphics such as modeling, viewing, lighting,
shading, hidden line/surface removal. More advanced topics such
as solid modeling, curves and surfaces, advanced raster graphics
architecture and algorithms, advanced modeling techniques, and
animation will also be covered. The graphics library used in
this course is OpenGL.
Prerequisites: CS315, CS335
Course Contents:
1. Overview: graphics systems, models
2. Graphics Programming: OpenGL, primitives, callback functions,
attributes, color, viewing, control functions
3. 2D graphics: world windows and viewports, clipping, canvas,
lines/polygons/curves
5. Geometric Objects and Transformations: 3D primitives, transformations
6. 3D Viewing: normalization, clipping, projection, mapping
7. Modeling: Hierarchies, solid modeling
8. Curves and Surfaces: Hermite, Bezier, B-spline, NURBS
9. Illumination: hidden line/surface removal, shadows
10. Rendering: Ray tracing, radiosity
11. Shading: lighting models, shading models
12. Animation: keyframes, physical dynamics
13. Implementation: modeling, geometric processing, rasterization, display
14. Working with Models: hierarchical, trees, animation, recursive,
fractals, physically based
15. Discrete Techniques: buffers, texture, sampling, aliasing
Important Dates:
Midterm - 10/21/02 (Monday)
Last day to withdraw from a course - 10/25/02 (Friday)
Thanksgiving Holidays 11/28/02 - 11/30/02
Last day of classes - 12/13/02 (Friday)
Final Exam - 12/20/02 (Friday 10:30 am)