Graphics and Animation
MM804 B1

(Winter 2018)

General Information

Instructor: Kumar Punithakumar
Email: punithak@ualberta.ca
Tel: 780-407-1871

URL: http://sites.ualberta.ca/~punithak/
Office: RTF 4-103A
Office hours: By appointment only

Lectures: Tuesdays and Thursdays, 1:00 PM - 2:20 PM at CAB 377

Course Description:
Developing appealing graphics and animations has become a requirement in many industrial applications like entertainment, advertising and online education. The animation is effective in explaining abstract concepts in biology, physics, and medicine. 3D graphics and simulation are also beneficial in surgical training and planning. This course is intended to provide in-depth discussions on graphics and animation techniques, in particular relating to 3D data acquisition, processing, transmission, and rendering. Students will have the opportunity to understand and compare various state-of-the-art techniques in 3D modeling, animation and special effects.

Prerequisites:
Basic programming knowledge in one of the following programming languages: Python, C++, TCL, Java. A brief introduction to Python programming language will be covered in the course.

Lecture Notes:

Lecture date Topic Slide Extras
W1: Jan 9 Visualization Overview L01 VTK installation:
  VTK Python Tutorial
  VTK Java Tutorial
  VTK C++: Configure and Build

Example codes:
  Python: Cube.py
  Java: Cylinder.java
W1: Jan 11 Introduction to Computer Graphics and VTK L02 Example: Multiple Viewports
W2: Jan 16 Servier Lab Visit    
W2: Jan 18 Computer Graphics Primer L03 Example: Flat shading
Example: Phong shading
W3: Jan 23 Data and Attributes L04 Example: Polydata

Assignment 1
W3: Jan 25 Scalar Algorithms L05  
W4: Jan 30 Advanced Data Representation L06  
W4: Feb 1 Implicit Modelling L07 Example: Clipping [Data: Cow]
Example: Implicit Modeling (Euclidean distance)
Example: Implicit Modeling (Boolean)
Example: Implicit Modeling (Quadratic)
W5: Feb 6 Volume Rendering L08 Example: Volume rendering
W5: Feb 8 Volume Illumination L09 Dataest: Head_Neck.zip
Example: Volume rendering (Shading effect)
W6: Feb 13 Vector Field Visualization L10  
W6: Feb 15 Flow Visualization L11  
W7: Feb 20 to Feb 23 Winter Reading Week    
W8: Feb 27 Tensor Algorithms L12 Assignment 2
W8: Mar 1 Three-Dimensional Surfaces L13  
W9: Mar 6 Visual Encodings L14  
W9: Mar 8 Interaction in Visualization L15 Widget examples:
Slider2D widget
Slider3D widget
Box widget
Text widget
Contour widget
Orientation marker widget
Image plane widget

W10: Mar 13 Visualization Software L16  
W10: Mar 15 Applications: Medical Imaging L17  
W11: Mar 20 Student Literature Review 1   Assignment 3
W11: Mar 22 Student Literature Review 2    
W12: Mar 27 No Class    
W12: Mar 29 No class    
W13: Apr 3 Applications: Finite Element, Fluid Dynamics and Financial L18  
W13: Apr 5 No class    
W13: Apr 10 Student Project Presentations and Demo    
W14: Apr 17 Final Project Report    

Course Grade:
Assignments: 35% (Assignment 1 - 8%; Assignment 2 - 12%; Assignment 3 - 15%)
Paper summary and presentation: 15%
Final project: 50%

Reading list
The following books are recommended for additionally support the course, but they are not essential.