Characteristics of a good UI; User Centred UI; Design tools and methods; Interactive System Design; Prototyping Techniques; Evaluation Techniques; Output Primitives & attributes; Geometric transformations (e.g. Homogeneous coordinates, 2D and 3D matrix representations); Viewing models (2D viewing and 3D viewing); Curves & surfaces; Line clipping; Polygon clipping; Illumination; Visible surface detection; Fractal generation; Animation. Use of advanced graphics libraries (e.g. OpenGL and/or DirectX) for the implementation of the different concepts discussed.