BIT 5th Semester
Computer Graphics Syllabus


Computer Graphics

Course Title: Computer Graphics

Course No: BIT304

Nature of the Course: Theory + Lab

Semester: V

Full Marks: 60+20+20 Pass Marks: 24+8+8 Credit Hrs: 3

Course Description

This course covers the basic concepts of Computer Graphics, various algorithms for basic graphics primitives, 2-D geometric transformations on graphical objects, various Clipping algorithms on graphical objects, 3-D geometric transformations, curve representation techniques and projections methods, object surface modeling, visible surface detection, application of illumination and rendering algorithms, virtual reality and animation technique along with basic concept of Open GL.

Course Objectives

The main Objective of this course is to equip students with the fundamental knowledge and basic technical competence in the field of Computer Graphics, to emphasize on implementation aspect of Computer Graphics Algorithms and to prepare the student for advance areas and professional avenues in the field of Computer Graphics.

Course Contents

Unit 1: Introduction and Overview of Graphics System 3 Hrs.

Definition and Representative uses of Computer Graphics, Computer Graphics vs. Image Processing, Application Areas, Overview of Coordinate System, Definition of Scan Conversion, Rasterization and Rendering, Raster Scan & Random Scan Displays, Architecture of Raster Graphics System with Display Processor, Architecture of Random Scan System

Unit 2: Output Primitives 6 Hrs.

Scan conversions of point, line, circle and ellipse: DDA algorithm and Bresenham algorithm for line drawing, midpoint algorithm for circle, midpoint algorithm for ellipse drawing (Mathematical derivation for above algorithms is expected), Filled Area Primitive: Scan line Polygon Fill algorithm, inside outside tests, Boundary Fill and Flood fill algorithm.

Unit 3: Two Dimensional Geometric Transformations 3 Hrs.

Basic transformations: Translation, Scaling, Rotation, Matrix representation and Homogeneous Coordinates, Composite transformation, Other transformations: Reflection and Shear

Unit 4: Two-Dimensional Viewing and Clipping 3 Hrs.

Viewing transformation pipeline and Window to Viewport coordinate transformation, Clipping operations: Point clipping, Line clipping algorithms: CohenSutherland, Liang- Barsky, Polygon Clipping Algorithms: Sutherland Hodgeman

Unit 5: Three-Dimensional Graphics 6 Hrs.

3D Transformations: Translation, Rotation, Scaling, Reflection and Shear, Composite transformations: Rotation about an arbitrary axis, Projections – Parallel, Perspective. (Matrix Representation)

Unit 6: Three-Dimensional Object Representation and Curve Modeling 6 Hrs.

Boundary Surface Representation Vs Space Partitioning Representation, Polygon Surface Representation: Polygon Table and Polygon Meshes, Wireframe and Sweep Representation, Octree Representation, Bezier Curve, B-Spline Curve, Fractal-Geometry: Fractal Dimension, Koch Curve

Unit 7: Visible Surface Detection 6 Hrs.

Image Space and Object Space techniques, Back Face Detection, Z-Buffer, A-Buffer, Scan-Line method, Painter's Algorithms, Area Subdivision method

Unit 8: Illumination and Surface Rendering methods 6 Hrs.

Introduction, Ambient, Diffuse and Specular reflections illumination Model, Constant, Gouraud and Phong shading models

Unit 9: Virtual Reality and Animation 3 Hrs.

Virtual Reality : Concept of Virtual Reality, Components of VR System, Types of VR System, 3D position Tracker, Navigation and Manipulation Interface, Application of VR, Animation: Introduction to Animation, Traditional Animation Techniques, Principles of Animation, Key framing: Character and Facial Animation, Deformation, Motion capture

Unit 10: Introduction to Open GL 2 Hrs.

Introduction to OpenGL, Callback Functions, Color Commands, Drawing Pixels, Lines, and Polygons using OpenGL, Viewing, Lighting

Laboratory Works:
Scan conversions: lines, circles, ellipse, filling algorithms, clipping algorithms, 2D and 3D transformation Curves Visible surface determination, Simple animations, Application of these through exercises using appropriate programming languages. List of experiment are:

1. Implement DDA Line Drawing algorithm
2. Implement Bresenham's Line algorithm
3. Implement midpoint Circle algorithm.
4. Implement midpoint Ellipse algorithm.
5. Implement Area Filling Algorithm: Boundary Fill, Flood Fill.
6. Implement Scan line Polygon Filling algorithm
7. Implement 2D Transformations: Translation, Scaling, Rotation, Reflection, Shear.
8. Implement Line Clipping Algorithm: Cohen Sutherland / Liang Barsky.
9. Implement 3D transformation.
10. Implement Curve: Bezier for n control points, B Spline
11. Perform Animation (such as Rising Sun, Moving Vehicle, Smileys, Screen saver etc.)

References:

1. Hearn & Baker, "Computer Graphics C version", 2nd Edition, Pearson Publication
2. James D. Foley, Andries van Dam, Steven K. Feiner, John F. Hughes, "Computer Graphics Principles and Practice in C", 2nd Edition, Pearson Publication
3. D. Rogers, "Procedural Elements for Computer Graphics", Tata McGraw-Hill Publications
4. Zhigang Xiang, Roy Plastock, "Computer Graphics", Schaum's Outlines McGraw-Hill Education
5. Rajesh K. Maurya, "Computer Graphics", Wiley India Publication
6. F. S. Hill, "Computer Graphics using OpenGL", Third edition, Pearson Publications
Source: Tribhuvan University

tu BIT Computer Graphics

5th semester Computer Graphics

TU BIT Computer Graphics Syllabus