Computer Graphics

Programming

Introduction

  1. Relation to Other Courses
  2. History: Whirlwind I, SAGE, Pierre Bezier, Sketchpad, Steven A. Coons, ACM, Core Graphics System, Bui Tuong Phong, PADL-1
  3. Applications: Visualization, CAD/CAM, Animation, Computer Art
  4. Developing Tools: OpenGL, DirectX, Java3D, VRML
  5. Graphics Hardware: CRT, LCD, Graphics Cards
  6. Ref: fullwiki

Rasterizing

  1. Line: Digital Differential Analyzer (DDA), Bresenham's Line Algorithm
  2. Circle: Midpoint Circle Algorithm, Bresenham's Circle Algorithm
  3. Ellipse

Polygon Filling

  1. Global Edge Table, Active Edge Table, Connected Area
  2. Recursive Flood Fill

Clipping

  1. Line Clipping: Cohen¨CSutherland Algorithm, Cyrus¨CBeck Algorithm, Liang¨CBarsky Algorithm
  2. Polygon Clipping

Other Raster Graphics

  1. Aliasing and Antialiasing
  2. Line Formats, Fonts

Graphics Pipeline and Transformations

  1. Graphics Pipeline
  2. Homogeneous Coordinates, Transformation Matrices
  3. Translation, Stretching, Squeezing, Reflection, Rotation, Shearing, Projection

Parametric Curve and Surfaces

  1. Position Vector, Frenet Frame, Tangent Vector, Normal Vector, Curvature, Torsion
  2. Smoothness, Interpolation, Curve Fitting
  3. Bezier Curve, B-Spline

3D Graphics

  1. Hidden-Surface Removal (HSR), Hidden-Line Removal (HLR), Z-buffering
  2. Color Models
  3. Lighting: Ambient Light, Ambient Light, Specular Reflection
  4. Texture Mapping, Shadow mapping