UTTARPRADESH Annexure ‘CD – 01’ Course Title: Principles of Computer Graphics Credit Units: 5 Course Code: Course Level: UG Course Objectives: After finishing this course student will be able to: 1) To acquaint the learner with the basic concepts of Computer graphics 2) To learn the various algorithms for generating and rendering graphical figures. 3) To get familiar with mathematics behind the graphical transformations 4) To understand and apply various methods and techniques regarding projections 5) To get familiar with various animation techniques L T P/ S SW/F W 3 - 2 2 TOTAL CREDIT UNITS 5 PSDA Pre-requisites: Basic knowledge of Mathematics, Data Structures and algorithms Course Contents/Syllabus: Module I: Introduction to Graphics and Graphics Hardware System Video display devices, CRT, LCD Display Devices Raster scan displays, Random scan displays, Raster scan systems, Random scan Systems. Input devices, keyboard, mouse, Trackball and space ball, Joystick, Data glove, Digitizers, Image scanners, Touch panels, Light pens, Voice systems. Hardcopy devices, Printers, Plotters. Module II: Output Primitives and Clipping operations Algorithms for drawing 2D Primitives lines (DDA and Bresenham’s line algorithm), circles (bresenham’s and midpoint circle algorithm), Antialiasing and filtering techniques. Line clipping (Cohen Sutherland algorithm), clip windows, circles, ellipses, polygon, clipping with Sutherland Hodgeman algorithm. Weightage (%) 20 25 5 Module III: Geometric transformation 2D Transformation: Basic transformation, Translation, Rotation, scaling, Matrix Representations and Homogeneous coordinates, window to view port transformation.3D Concepts: Parallel projection and Perspective projection, 3D Transformation. 25 Module IV: 3D object Representation, Color models and rendering Polygon meshes in 3D, Spheres, Ellipsoid, Bezier curves and Bezier surfaces, Bspline curves and surfaces, solid modeling, sweep representation, constructive solid geometry methods. Achromatic and color models. Shading, rendering techniques and visible surface detection method: Basic illumination, diffuse reflection, specular reflection. Polygon rendering method, Gouraud & Phong shading. Depth-buffer method, A-buffer method, Depthsorting method (painter’s algorithm). 20 Module V: Introduction to multimedia File formats for BMP, GIF, TIFF, IPEG, MPEG-II, Animation techniques and languages. 10 Pedagogy for Course Delivery (Blended mix mode): Subject will be taught based on classroom lectures, practical, self-works, and activities. Lab Assignments: 1. Write C++/Java program to draw line using DDA and Bresenham‘s algorithm. Inherit pixel class and Use function overloading. 2. Write C++/Java program to draw circle using Bresenham‘s algorithm. Inherit pixel class. 3. Write C++/Java program to draw 2-D object and perform following basic transformations, a) Scaling b) Translation c) Rotation Use operator overloading. 4. Write C++/Java program to fill polygon using scan line algorithm. Use mouse interfacing to draw polygon. 5. Write C++/Java program to draw the polygons by using the mouse. Choose colours by clicking on the designed color pane. Use window port to draw. Use DDA algorithm for line drawing. 6. Write C++/Java program to draw inscribed and Circumscribed circles in the triangle as shown as an example below. (Use any Circle drawing and Line drawing algorithms) 7.Write a program to implement Bresenham’s line drawing algorithm. 8. Write a program to implement mid-point circle drawing algorithm. 9. Write a program to clip a line using Cohen and Sutherland line clipping algorithm. 10. Write a program to clip a polygon using Sutherland Hodgeman algorithm Self-Work/ Professional Skill Development activities - Self-Work/ Professional Skill Development activities can be conducted by dividing the class into group of 7-8 students and same will be evaluated by board of faculty members along with the group report. Some of the suggested activities are: PSDA 1 1. Theoretical understanding of algorithms of circle, ellipse, line 2. Learning derivations of various algorithms of circle, line, ellipse PSDA 2 1. Learn the different type of 2D transformations 2. Learning of Clipping algorithms 3. Describe the different types of clipping Algorithms 4. Theoretical understanding of concept of Projections PSDA 3 1. Theoretical understanding the working of CRT and color CRT 2. Use of various output device 3. Learning of LED and LCD 4. Describe the use of input and output devices PSDA 4 1. 2. 3. 4. PSDA 5 1. Describe the various file format 2. Learning animation techniques Theoretical understanding of 3D Objects Understanding the concept of various Gouraud & Phong shading Understanding the concept of Depth-buffer method Understanding the concept of Depth-sorting Course Curriculum Outcomes(CLO): On completion of the course, student will be able to– Apply mathematics and logic to develop Computer programs for elementary graphic operations Develop scientific and strategic approach to solve complex problems in the domain of Computer Graphics Develop the competency to understand the concepts related to Computer Vision and Virtual reality Apply the logic to develop animation and gaming programs Describe the logic on 2D Transformations Assessment/ Examination Scheme: Theory L/T (%) Lab/Practical/Studio (%) End Term Examination 80 20 100 Theory Assessment (L&T): Continuous Assessment/Internal Assessment Components (Drop down) Weightage (%) End Term Examination Attendance Class Test Self-work/PSDA VIVA 5 10 20 5 60 Text Books: 1. S. Harrington, ―Computer Graphics‖, 2nd Edition, McGraw-Hill Publications, 1987, ISBN 0 – 07 – 100472 – 6. 2. D. Rogers, ―Procedural Elements for Computer Graphics‖, 2nd Edition, Tata McGraw-Hill Publication, 2001, ISBN 0 – 07 – 047371 – 4. 3. Donald D. Hearn, ―Computer Graphics with Open GL‖, 4th Edition, ISBN13: 9780136053583. 4. R. Plastock and G. Kalley, “Theory and Problems of Computer Graphics”, Schaum’s Series, McGraw Hill, 1986 Reference Books: 1. J. Foley, V. Dam, S. Feiner, J. Hughes, ―Computer Graphics Principles and Practice‖, 2nd Edition, Pearson Education, 2003, ISBN 81 – 7808 – 038 – 9. 2. D. Rogers, J. Adams, ―Mathematical Elements for Computer Graphics‖, 2nd Edition, Tata McGrawHill Publication, 2002, ISBN 0 – 07 – 048677 – 8. 3. Mario Zechner, Robert Green, ―Beginning Android 4 Games Development‖, Apress, ISBN: 978-81- 322-0575-3. 4R.H. Bartels, J.C. Beatty and B.A. Barsky, “An Introduction to Splines for use in Computer Graphics and Geometric Modeling”, Morgan Kaufmann Publishers Inc., 1987.