San Jose State University Greensheet

Fall 2006

CS116A (Sections 1 and 2): Introduction to Computer Graphics

CS 116A Section 1 (Course Number 46825) Mon/Wed 13:30-14:45 Location: MH 223

CS 116A Section 2 (Course Number 46826) Mon/Wed 15:00-16:15 Location: MH 424

Instructor: Soon Tee Teoh

Office Hours:

Tue 9am – 12pm, 1pm – 3pm

I am also available by appointment.

Office: McQuarrie Hall 211 (phone: 408-924-7227).

E-mail: teoh@cs.sjsu.edu

Course Website:

http://www.cs.sjsu.edu/~teoh/teaching/cs116a/

Prerequisites:

The prerequisites for this class are Math 32, Math 129A and CS 146. Students should also already know C or C++ programming.

Adding and Dropping Classes:

The student is responsible for understanding the policies, procedures, and deadlines for adding and dropping classes, and for academic renewal, withdrawal.

Course Description:


This class covers vector geometry, geometric transformations and the graphics pipeline, basic raster graphics algorithms for drawing discrete lines, clipping, visible surface determination and shading, display of curves and surfaces, and graphics data structures.

Course material is organized into the following units:

  • Introduction to the graphics pipeline, OpenGL, GLUT
  • Line-drawing algorithms
  • Circles, ellipses, curves, splines and surfaces
  • Polygons
  • Colors and Line Attributes
  • 2D and 3D Transformations
  • 2D and 3D Viewing
  • Shading algorithms

 

Text: Donald Hearn and M. Pauline Baker, “Computer Graphics with OpenGL”, Third Edition, ISBN 0-13-015390-7, Prentice-Hall, 2004.

Schedule:

The following is the tentative course schedule for the class.

 

Week

Date

Topic

Reading

0

8/23/06

Intro, OpenGL, GLUT

2.8-2.9

1

8/28/06

OpenGL, Points, Lines

3.1-3.4

8/30/06

Line-Drawing Algorithms

3.5-3.9

2

9/4/06

None (Labor Day)

 

9/6/06

Circles, Ellipses, Curves

3.10-3.13

3

9/11/06

Polygons, Pixel Arrays

3.14-3.19

9/13/06

Characters, Display Lists

3.20-3.25

4

9/18/06

Color and Line Attributes

4.1-4.8, 12

9/20/06

Splines

8.9-8.11

5

9/25/06

2D Transformations

5.1-5.8

9/27/06

Review

 

6

10/2/06

Midterm 1

 

10/4/06

3D Transformations I

5.9-5.11

7

10/9/06

3D Transformations II

5.12-5.16

10/11/06

Matrix Stack

5.17

8

10/16/06

3D Viewing

7.1-7.4

10/18/06

3D Projection Transformations

7.5-7.7

9

10/23/06

3D Perspective and OpenGL

7.8-7.10

10/25/06

Lighting I

10.1-10.3

10

10/30/06

Lighting II

10.4-10.5

11/1/06

 

 

11

11/6/06

Review

 

11/8/06

Midterm 2

 

12

11/13/06

Curved surfaces

8.1-8.8

11/15/06

OpenGL Buffers

 

13

11/20/06

2D Viewing, Infoviz

6.1-6.6

11/22/06

2D, 3D Clipping

6.7-6.8, 7.11-7.13

14

11/27/06

Intro to Advanced Graphics

 

11/29/06

Project Demos

 

15

12/4/06

Project Demos

 

12/6/06

Review

 

 

 

Teaching Methodology: The course is given through two lecture periods each week. This course will utilize lecture, discussion and hands-on lab work as the main tools for presenting the course material. Students will be expected to read the text, and be prepared to discuss the readings and the assignments in class. Students in the course are expected to complete: assigned readings, assignments, and projects.

Attendance Policy: Lectures: Students should attend all lectures, not only because they are responsible for material discussed in the lectures, but also because active participation is essential to insure maximum benefit for all members of the class. Attendance will not be used as a criterion for grading. The student is responsible for knowing all announcements made by the instructor during lectures.

Course Requirements:

The course is composed of three components: assigned readings, lectures, homework (both written and programming), project and exams. The homework are based on lecture material and textbook readings. Examinations will be based on lectures, readings and homework assignments.

Examinations: All examinations will be announced at least one week in advance and will cover material discussed in class and the text book. Test material will be drawn from the text book, lecture, assignments and any supplementary material provided by the instructor. Exact details about examinations in this course will be determined by the instructor. Typically there will be two in-class examinations during the semester and a two-hour final examination. Specific details will be made available before the exams are offered

Grading: Your grade will depend on: exams (based mostly on class lectures), homework (based on class lectures) and project. Each student will accumulate points for all assigned homework and exams. Keep your homework and tests at least until you receive your grade.

(1) Homework Assignments (3 @ 5%) 15%

There are 3 homework assignments planned.

Collaboration on homework is allowed. This means that you may discuss approaches to solving a problem with anyone in the class. Work together as much as you like except when specifically prohibited, as on most exams. However, each student must turn in his/her own work. Homework assignments can include both written problems and programming assignments.

The method of submission of homework will be given on the homework itself. Students are assumed to have prior ability to program in C/C++. Programming assignments will involve C/C++ programming, using the OpenGL, GLUT and GLUI libraries. Homework assignments are due at the beginning of lecture on the assigned due date.

The programming assignment is graded on the correctness of the program and the adherence to the requirements given in the assignment. A submission that does not follow the instructions cannot be evaluated and therefore will receive no credit. If the program code is written clearly, some partial credit may possibly be given for partial correctness of the program code.

Late Turn-In Policy: You may submit your homework within 24 hours after the due time for a 10% deduction of your grade for that part. You may submit your homework within the next 24 hours for a 20% deduction. No credit will be awarded for homework submitted more than 48 hours after the due time.

(2) 2 Midterm Examinations (2 @ 15%) 30%

An unexcused absence from an examination will result in a grade of zero for that examination. The only valid excuses for missing an examination are prior written approval from the instructor or a documented medical emergency.

(3) Project 15%

The guidelines for the project are the same as the programming assignments, except: (1) the project is worth 15% of the grade, (2) students will also be allowed to work in groups of up to 3 members (each group should turn in only ONE project), and (3) each group is required to present a 10-minute demonstration of their work. If a demonstration is not presented on the assigned date, 20% will be deducted from the grade for the project. Each student in the same group will receive the same grade for the project.

Late Turn-In Policy: You may submit your project within 24 hours after the due time for a 10% deduction of your grade for that part. You may submit your project within the next 24 hours for a 20% deduction. No credit will be awarded for projects submitted more than 48 hours after the due time.

(4) Final Examination 40%

The final exam will assume familiarity with material in the text, covered in lecture, and/or used in homework problems. The final exam will be held on:

            Section 1: Tue, Dec 12, 12:15pm – 2:30pm

            Section 2: Thu, Dec 14, 12:15pm – 2:30pm

Grading Scale (in points):

100-96 A+ 
95.99-92 A 
91.99-88 A-
87.99-85 B+ 
84.99-80 B 
79.99-75 B-
74.99-70 C+ 
69.99-65 C 
64.99-60 C-
59.99-55 D+ 
54.99-50 D 
49.99-45 D- 
Below 45 F

Campus policy in compliance with the Americans with Disabilities Act:

“If you need course adaptations or accommodations because of a disability, or if you need special arrangements in case the building must be evacuated, please make an appointment with me as soon as possible, or see me during office hours. Presidential Directive 97-03 requires that students with disabilities requesting accommodations must register with DRC to establish a record of their disability.”

Academic integrity statement (from the Office of Student Conduct and Ethical Development):

“Your own commitment to learning, as evidenced by your enrollment at San Jose State University, and the University’s Academic Integrity Policy requires you to be honest in all your academic course work. Faculty members are required to report all infractions to the Office of Student Conduct and Ethical Development. The policy on academic integrity can be found at http://sa.sjsu.edu/student_conduct .”