ECS 175 COMPUTER GRAPHICS (4) I, II
Lecture: 3 hours
Discussion: 1 hour
Prerequisites: Courses 60; Mathematics 22A or Mathematics 67
Grading: Letter; programming assignments (50%), midterm (20%),
final (30%)
Catalog Description:
Principles of computer graphics. Current graphics hardware, elementary operations in two-and three-dimensional space, transformational geometry, clipping, graphics system design, standard graphics systems, individual projects.
Goals:
To acquaint the student with the basic principles and problems of computer graphics. To give the student the mathematical background to understand and implement these basic principles. To give the student the computer science underpinnings of the implementation of computer graphics modeling and rendering systems.
Expanded Course Description:
- Computer Graphics Hardware
We present a comparison of various types of graphics equipment. Discussion
centers upon the differences between Calligraphic and Raster Graphics
hardware. A simple hardware design of a basic graphics device is described.
Typical software interfaces to graphics devices are presented, with motivation
toward the standardized interface.
- Curve and Surface Drawing
We present techniques for curve and surface generation. Discussion centers
on line drawing methods for mathematical curves, and grid based methods
for mathematical surfaces. Parametric methods are emphasized, B'ezier
Curves and Patches being briefly described.
- Transformations
We present a full discussion of 2- and 3-dimensional modeling transformations
and their matrix representation. Discussion focuses on methods that build
complex transformations from elementary ones, namely, translations, scalings,
rotations, perspectives and shears. Position of a camera in a scene is
discussed, with the transformations necessary to get the scene into a
standard form with the camera at a preset location.
- Generation of a Basic Modeling System
We present a formal model of a polygonal modeling system for generation
of complex scenes. A typical modeling system is based upon hierarchical
principles, and will allow complex scenes, consisting of many similar
components, to be generated.
- Clipping, Camera Models
We present a general 3-dimensional clipping mechanism that can be integrated
into a polygonal modeling system. Window clipping is fully discussed,
and integrated into the camera model.
- Visable-Surface Algorithms
We present a full discussion of the five basic types of visible-surface
algorithms available today in computer graphics: painter's algorithm,
the Z-buffer algorithm, the scanline algorithm, ray tracing and space
subdivision algorithms.
Textbook:
Angel, Interactive Computer Graphics A Top Down Approach With Open GL, Addison-
Wesley, 2005
Computer Usage:
Students implement their term projects with the C and/or C++ programming
language, using the computer systems available in the Computer Science Instructional
Facility.
Programming Projects:
The programming projects for this class are chosen to enhance the
lecture material in the course.
Engineering Design Statement:
The individual student taking this class will design and document a complete computer graphics modeling and rendering system that contains (1) a complete transformation/clipping package, (2) an elementary modeling package which will enable construction of complex scenes, and (3) a visible surface determination package. The design of the system is embodied in the “milestone” papers that are required in advance of the project deadlines. The students must design and implement the components of the system. Examinations also include questions based on design components of the course in addition to formal concepts.
ABET Category Content:
Engineering Science: 2 units
Engineering Design: 2 units
Goals:
Students will:
- learn the basic principles and problems of computer graphics
- learn mathematical background to understand and implement these basic principles
- learn the underpinnings of the implementation of computer graphics modeling and
rendering systems
Student Outcomes:
- An ability to apply knowledge of mathematics, science, and engineering
- An ability to design a system, component, or process to meet desired needs within realistic constraints such as economic, environmental, social, political, ethical, health and safety, manufacturability, and sustainability
- An ability to identify, formulate, and solve engineering problems
- A recognition of the need for, and an ability to engage in life-long learning
- A knowledge of contemporary issues
Instructors: B.
Hamann, K. Joy, N. Amenta
Prepared by: K. Joy, B. Hamann, N. Amenta (September 2008)
Overlap Statement:
There is no significant overlap with other courses.
9/08
Back to Course Descriptions