ECE467

Introduction to Computer Graphics
Fall 2015
Designation: 
Elective
Catalog Data: 

ECE 467 -- Introduction to Computer Graphics (3 units)

Description: Computer graphics programs and packages, 2D and 3D object transformations, homogeneous coordinates, parallel and perspective projections, clipping and view volumes, spline curves and surfaces, solid models, hidden line and surface removal, lighting and shading, graphical user interfaces, graphics file formats, animation and implementations using OpenGL

Grading: Regular grades are awarded for this course: A B C D E

Course Fee: 

Prerequisite(s): 
ECE275 and ECE310 (or a basic knowledge matrices and linear algebra)
Textbook(s): 

Angel, Edward and Dave Schreiner. Interactive Computer Graphics: A Top-Down Approach with Shader-Based OpenGL. 6th Ed. Pearson. 2011.

Course Learning Outcomes: 

By the end of this course, the student will be able to:

  1. Learn mathematical concepts related to displays and 3D transformations, and modeling 3D curves, surfaces and objects.
  2. Develop computation structures and basic graphics programs for computer graphics.
  3. Understand how to work with OpenGL, a computer graphics package.
  4. Understand mathematical techniques for modeling 3D objects, surfaces and curves.
  5. Understand applications of computer graphics in areas such as graphical simulation, robotics, data visualization, user interfaces, computer vision and animation.
Course Topics: 

Computational geometry

  • Explicit, implicit and parametric representations
  • Intersections

Data structures for computer graphics, programing using OpenGL, and graphic primitives

  • Linked lists, arrays and trees
  • Graphic primitives and polyhedra
  • OpenGL, call back functions and object databases

Object transformations

  • 2D transformations, world and homogeneous coordinates
  • 3D object transformations, rotations and translations
  • Scaling and Reflection
  • Composition of transformations

Viewing computations

  • Window and view port mapping
  • Parallel, orthographic, and multi-view orthographic projections
  • Perspective projections, view volumes and clipping

Space curves

  • 3D curve and surface properties, tangents, normals, curvature, torsion, bi-normal
  • Piece wise parametric cubic, splines, Ferguson and Bezier curve segments
  • Matrix approach
  • Composite curves

Surfaces

  • Primitive surfaces
  • Representing surfaces for computing
  • Computing Properties: normal, curvature, bi-normal, fundamental matrices
  • Surfaces of revolution
  • Linear swept surfaces and surface patches
  • Free-form surfaces - parametric cubic surfaces and composite surfaces

Hierarchical and solid modeling

  • Constructive solid geometry
  • Boundary representation
  • Spatial enumeration
  • Feature modeling
  • Feature extraction

Lighting and shading

  • Illumination and lighting models
  • Surface reflection, diffuse reflection, specular reflection
  • Shadows
  • Polygon rendering

Graphic file formats

  • File compression techniques: JPEG, TIFF, PNG, and GIF

Hidden line and hidden surface removal (if time permits)

  • Z-Buffer algorithms
  • Computing visibility
Class/Laboratory Schedule: 

Two, 75-minute lectures per week

Relationship to Student Outcomes: 

ECE 467 contributes directly to the following specific Electrical Engineering and Computer Engineering Student Outcomes of the ECE department:

  • an ability to apply knowledge of mathematics, science and engineering (High)
  • 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 (Medium)
  • an ability to identify, formulate, and solve engineering problems (Medium)
  • an ability to use the techniques, skills,and modern engineering tools necessary for engineering practice (High)
Prepared by: 
Dr. Michael Marefat
Prepared Date: 
5/19/16

University of Arizona College of Engineering