Points and lines, Line drawing algorithms. Circle generating algorithms, Midpoint circle Parallel version of these algorithms

Similar documents
CHAPTER 1 Graphics Systems and Models 3

Course Title: Computer Graphics Course no: CSC209

CHETTINAD COLLEGE OF ENGINEERING & TECHNOLOGY CS2401 COMPUTER GRAPHICS QUESTION BANK

SRM INSTITUTE OF SCIENCE AND TECHNOLOGY

CS2401 COMPUTER GRAPHICS ANNA UNIV QUESTION BANK

OXFORD ENGINEERING COLLEGE (NAAC Accredited with B Grade) DEPARTMENT OF COMPUTER SCIENCE & ENGINEERING LIST OF QUESTIONS

End-Term Examination

Interactive Computer Graphics A TOP-DOWN APPROACH WITH SHADER-BASED OPENGL

SAZ4C COMPUTER GRAPHICS. Unit : 1-5. SAZ4C Computer Graphics

COURSE DELIVERY PLAN - THEORY Page 1 of 6

Topics and things to know about them:

(a) rotating 45 0 about the origin and then translating in the direction of vector I by 4 units and (b) translating and then rotation.

0. Introduction: What is Computer Graphics? 1. Basics of scan conversion (line drawing) 2. Representing 2D curves


Pipeline Operations. CS 4620 Lecture 10

MET71 COMPUTER AIDED DESIGN

Pipeline Operations. CS 4620 Lecture Steve Marschner. Cornell CS4620 Spring 2018 Lecture 11

Institutionen för systemteknik

SRM ARTS AND SCIENCE COLLEGE SRM NAGAR, KATTANKULATHUR

Pipeline Operations. CS 4620 Lecture 14

SRI VENKATESWARA COLLEGE OF ENGINEERING. COURSE DELIVERY PLAN - THEORY Page 1 of 6

Computer Graphics I Lecture 11

Aptitude Test Question

CEng 477 Introduction to Computer Graphics Fall 2007

Course Title. Computer Graphics. Course Code CE313. Theory : 03. Practical : 01. Course Credit. Tutorial : 00. Credits : 04. Course Learning Outcomes

Part 3: 2D Transformation

CS 381 Computer Graphics, Fall 2008 Midterm Exam Solutions. The Midterm Exam was given in class on Thursday, October 23, 2008.

QUESTION BANK 10CS65 : COMPUTER GRAPHICS AND VISUALIZATION

Lahore University of Management Sciences. CS 452 Computer Graphics

Computer Graphics Introduction. Taku Komura

Computer Graphics. Instructor: Oren Kapah. Office Hours: T.B.A.

Rasterization Overview

CS 130 Final. Fall 2015

Computer Graphics: Programming, Problem Solving, and Visual Communication

The Traditional Graphics Pipeline

Graphics and Interaction Rendering pipeline & object modelling

GLOBAL EDITION. Interactive Computer Graphics. A Top-Down Approach with WebGL SEVENTH EDITION. Edward Angel Dave Shreiner

CS602 MCQ,s for midterm paper with reference solved by Shahid

03 Vector Graphics. Multimedia Systems. 2D and 3D Graphics, Transformations

Graphics for VEs. Ruth Aylett

CS 130 Exam I. Fall 2015

L1 - Introduction. Contents. Introduction of CAD/CAM system Components of CAD/CAM systems Basic concepts of graphics programming

graphics pipeline computer graphics graphics pipeline 2009 fabio pellacini 1

Module Contact: Dr Stephen Laycock, CMP Copyright of the University of East Anglia Version 1

graphics pipeline computer graphics graphics pipeline 2009 fabio pellacini 1

Graphics for VEs. Ruth Aylett

The Traditional Graphics Pipeline

COMPUTER GRAPHICS, MULTIMEDIA AND ANIMATION, Second Edition (with CD-ROM) Malay K. Pakhira

Shading, Advanced Rendering. Week 7, Wed Feb 28

The Traditional Graphics Pipeline

EF432. Introduction to spagetti and meatballs

Topic 0. Introduction: What Is Computer Graphics? CSC 418/2504: Computer Graphics EF432. Today s Topics. What is Computer Graphics?

Manipal Institute of Technology Manipal University Manipal

4) Finish the spline here. To complete the spline, double click the last point or select the spline tool again.

Hidden Surfaces II. Week 9, Mon Mar 15

Orthogonal Projection Matrices. Angel and Shreiner: Interactive Computer Graphics 7E Addison-Wesley 2015

Two-Dimensional Viewing. Chapter 6

CS452/552; EE465/505. Clipping & Scan Conversion

3D Polygon Rendering. Many applications use rendering of 3D polygons with direct illumination

Lecturer Athanasios Nikolaidis

CS230 : Computer Graphics Lecture 4. Tamar Shinar Computer Science & Engineering UC Riverside

Chapter 5. Projections and Rendering

EF432. Introduction to spagetti and meatballs

Homework #2. Hidden Surfaces, Projections, Shading and Texture, Ray Tracing, and Parametric Curves

CS602 Midterm Subjective Solved with Reference By WELL WISHER (Aqua Leo)

Introduction to Computer Graphics

KRISTU JYOTI COLLEGE OF MANAGEMENT & TECHNOLOGY QUESTION BANK BCA SEMESTER III Computer graphics Part A (2 marks questions)

CS 130 Exam I. Fall 2015

Motivation. Culling Don t draw what you can t see! What can t we see? Low-level Culling

Introduction to Visualization and Computer Graphics

S U N G - E U I YO O N, K A I S T R E N D E R I N G F R E E LY A VA I L A B L E O N T H E I N T E R N E T

Introduction to Computer Graphics. Knowledge basic concepts 2D and 3D computer graphics

3D Object Representation

Topic 12: Texture Mapping. Motivation Sources of texture Texture coordinates Bump mapping, mip-mapping & env mapping

2: Introducing image synthesis. Some orientation how did we get here? Graphics system architecture Overview of OpenGL / GLU / GLUT

VISIBILITY & CULLING. Don t draw what you can t see. Thomas Larsson, Afshin Ameri DVA338, Spring 2018, MDH

9. Three Dimensional Object Representations

Lahore University of Management Sciences. CS 452 Computer Graphics

Lecture 1. Computer Graphics and Systems. Tuesday, January 15, 13

Line Drawing. Introduction to Computer Graphics Torsten Möller / Mike Phillips. Machiraju/Zhang/Möller

Examples. Clipping. The Rendering Pipeline. View Frustum. Normalization. How it is done. Types of operations. Removing what is not seen on the screen

Animation & Rendering

Topic 11: Texture Mapping 11/13/2017. Texture sources: Solid textures. Texture sources: Synthesized

The University of Calgary

Graphics Hardware and Display Devices

Rendering. Converting a 3D scene to a 2D image. Camera. Light. Rendering. View Plane

Lecture 15: Shading-I. CITS3003 Graphics & Animation

Computer Graphics Shadow Algorithms

RASTERISED RENDERING

Adaptive Point Cloud Rendering

3D Graphics Pipeline II Clipping. Instructor Stephen J. Guy

Topic 11: Texture Mapping 10/21/2015. Photographs. Solid textures. Procedural

Line Drawing. Foundations of Computer Graphics Torsten Möller

CSE4030 Introduction to Computer Graphics

CS 325 Computer Graphics

Lecture 12: Advanced Rendering

CIS 581 Interactive Computer Graphics

Spring 2012 Final. CS184 - Foundations of Computer Graphics. University of California at Berkeley

3D graphics, raster and colors CS312 Fall 2010

3D Rasterization II COS 426

Transcription:

Jahangirabad Institute Of Technology Assistant Prof. Ankur Srivastava COMPUTER GRAPHICS Semester IV, 2016 MASTER SCHEDULE Unit-I Unit-II Class 1,2,3,4 Mon, Jan19,Tue20,Sat23,Mon 25 Class 5 Wed, Jan 27 Introduction and Line Generation, Types of Computer Graphics Graphic Displays- Random scan displays, Raster scan displays Class 6 Fri, Jan 29 Class 7 Sat, Jan 30 Frame buffer and video controller Points and lines, Line drawing algorithms Class 8,9 Mon, Feb1, Wed Feb 3 Class 10,11 Fri, Feb 5,Sat Feb 6 Circle generating algorithms, Midpoint circle Parallel version of these algorithms generating algorithm Class 12 Mon, Feb 8 Transformations Class 14 Fri, Feb 12 Matrix representations and homogenous coordinates Class 17,18 Wed, Feb 17,Fri Feb19 Windowing and Clipping: Viewing pipeline, Viewing transformations Class 20,21 Sat, Feb 27,Mon Feb 29 Cohen Sutherland line clipping algorithm, Liang Barsky Class 24 Wed, March 9 Polygon clipping Sutherland Hodgeman polygon clipping Class 26 Sat, March 12 Curve clipping, Text clipping. Unit-III Class 27 Mon, March 14 Three Dimensional: 3-D geometric primitives Class 29 Fri, March 18 3-D Transformation Unit-IV Class 31 Mon, March 21 Curves and Surfaces: Quadric surfaces Class 33 Sat, March 26 Introductory concepts of Spline Class 35 Wed, March 30 Hidden Lines and Surfaces: Back Face Detection algorithm Class 37 Fri, April 1 A- buffer method, Scan line method Class 39 Mon, April 4 Diffuse reflection, Specular reflection Class 41 Fri, April 8 Warn model Class 43 Mon, April 11 Color consideration Class 13 Wed, Feb 10 Basic transformation Class 15,16 Sat, Feb 13,Mon Feb 15 Composite transformations, Reflections and shearing Class 19 Fri, Feb 26 2-D Clipping algorithms-line clipping algorithms Class 22,23 Fri, Mar 4,Sat Mar 5 Line clipping against non rectangular clip windows Class 25 Fri, March 11 Weiler and Atherton polygon clipping Class 28 Wed, March 16 3-D Object representation Class 30 Sat, March 19 3-D viewing, projections, 3-D Clipping. Class 32 Fri, March 25 Spheres, Ellipsoid, Blobby objects Class 34 Mon, March 28 Bspline and Bezier curves and surfaces Class 36 Thurs, March 31 Depth buffer method Class 38 Sat, April 2 Basic illumination models Ambient light Class 40 Wed, April 6 Phong model, Combined approach Class 42 Sat, April 9 Intensity Attenuation Class 44 Wed, April 13 Transparency and Shadows.

Details are found in the following sections: General Information, Class Schedule, and Project Schedule. GENERAL INFORMATION Teaching Staff: Ankur Srivastava Assist Prof, JIT CSE, ankur.srivastava@gmail.com Course Web Site: Class Meetings: JIT Room 213 GOALS: The goal of this course is to provide an introduction to the theory and practice of computer graphics. The course will assume a good background in programming in C or C++ and a background in mathematics including familiarity with the theory and use of coordinate geometry and of linear algebra such as matrix multiplication. Know and be able to discuss hardware system architecture for computer graphics Know and be able to use a current 3D graphics API. Know and be able to use the underlying algorithms, mathematical concepts, supporting computer graphics. Composite 3D homogeneous matrices for translation, rotation, and scaling transformations. Hidden surface detection / removal. Know and be able to select among models for lighting/shading: Color, ambient light; distant and light with sources; Phong reflection model; and shading (flat, smooth, Gourand, Phong). Know and be able to use and select among current models for surfaces (e.g., curves, splines) Be able to design and implement models of surfaces, lights, sounds, and textures (with texture transformations) using a 3D graphics API. Be able to discuss the application of computer graphics concepts in the development of computer games, information visualization, and business applications. Be able to discuss future trends in computer graphics and quickly learn future computer graphics concepts and APIs. Course Objectives: This course is designed to provide a comprehensive introduction to computer graphics leading to the ability to understand contemporary terminology, progress, issues, and trends. A thorough introduction to computer graphics techniques, focusing on 3D modeling, image synthesis, and rendering. Topics cover: geometric transformations, geometric algorithms, software systems (OpenGL, shaders), 3D object models (surface, volume and implicit), visible surface algorithms, image synthesis, shading and mapping, global illumination. The interdisciplinary nature of computer graphics is emphasized in the wide variety of examples and applications.

Classes and Topics Class 1,2,3,4 Introduction and Line Generation, Types of computer graphics Mon, Jan 19,Tue 20, Sat 23, Mon 25 Line generation is used to describe the formation of lines using various algorithms like Bresenham s line drawing algorithm, DDA etc. a) Non Interactive Computer Graphics b) Interactive Computer Graphics Class 5 Graphic Displays- Random scan displays, Raster scan displays Wed, Jan 27 There are two kinds of computer graphics - raster (composed of pixels) and vector (composed of paths). Raster images are more commonly called bitmap images. A bitmap image uses a grid of individual pixels where each pixel can be a different color or shade. Bitmaps are composed of pixels. Vector graphics use mathematical relationships between points and the paths connecting them to describe an image. Vector graphics are composed of paths. Class 6 Frame buffer and video controller Fri, Jan 29 A frame buffer is a large, contiguous piece of computer memory. At a minimum there is one memory bit for each pixel in the rater; this amount of memory is called a bit plane. The picture is built up in the frame buffer one bit at a time. Class 7 Points and lines, Line drawing algorithms Sat, Jan 30 A line drawing algorithm is a graphical algorithm for approximating a line segment on discrete graphical media. On discrete media, such as pixel-based displays and printers, line drawing requires such an approximation (in nontrivial cases). Basic algorithms rasterize lines in one color. A better representation with multiple color gradations requires an advanced process, anti-aliasing. Class 8,9 Circle generating algorithms, Midpoint circle generating algorithm Mon, Feb 1, Wed Feb 3 In computer graphics, the midpoint circle algorithm is an algorithm used to determine the points needed for drawing a circle. The Bresenham's circle algorithm is derived from mid-pt circle algorithm. The algorithm can be generalized to conic sections. Class 10,11 Parallel version of these algorithms Fri, Feb 5, Sat Feb 6 In computer science, a parallel algorithm, as opposed to a traditional serial algorithm, is an algorithm which can be executed a piece at a time on many different processing devices, and then combined together again at the end to get the correct result. Class 12 Transformations Mon, Feb 8 Transformations are a fundamental part of computer graphics. Transformations are used to position objects, to shape objects, to change viewing positions, and even to change how something is viewed (e.g. the type of perspective that is used). Class 13 Basic transformation Wed, Feb 10 The three basic transformations are (i) Translation (ii) Rotation and (iii) Scaling.

Class 14 Matrix representations and homogenous coordinates Fri, Feb 12 We have seen that basic transformations can be expressed in matrix form. But many graphic application involve sequences of geometric transformations. Hence we need a general form of matrix to represent such transformations. To express any 2D transformations as a matrix multiplication, we represent each Cartesian coordinate position (x, y) with the homogeneous coordinate. Class 15,16 Composite transformations, Reflections and shearing Sat, Feb 13, Mon, Feb 15 More complex geometric & coordinate transformations can be built from the basic transformation by using the process of composition of function. Class 17,18 Windowing and Clipping: Viewing pipeline, Viewing transformations Wed, Feb 17, Fri, Feb 19 Window - an opening through which part of the outside world can be seen. What about the part of the real world that we cannot see? In computer graphics, this is eliminated through a technique called clipping. Essentially, we need to worry about clipping three different entities: 1) lines 2) polygons 3) text Class 19 2-D Clipping algorithms-line clipping algorithms Fri, Feb 26 The line clipping algorithm shows how to clip a line whether it is in the window or out of the window or partially. Class 20,21 Cohen Sutherland line clipping algorithm, Liang Barsky Sat,Feb 27, Mon,Feb 29 The Cohen Sutherland algorithm is a computer graphics algorithm used for line clipping. The algorithm divides a two-dimensional space into 9 regions (or a three-dimensional space into 27 regions), and then efficiently determines the lines and portions of lines that are visible in the center region of interest (the viewport). Class 22,23 Line clipping against non rectangular clip windows Fri,Mar 4, Sat Mar 5 In computer graphics, 'line clipping' is the process of removing lines or portions of lines outside of an area of interest. Typically, any line or part thereof which is outside of the viewing area is removed. Class 24 Polygon clipping Sutherland Hodgeman polygon clipping Wed, Mar 9 The Sutherland Hodgman algorithm is used for clipping polygons. It works by extending each line of the convex clip polygon in turn and selecting only vertices from the subject polygon that are on the visible side. Class 25 Weiler and Atherton polygon clipping Fri,Mar 11 The Weiler Atherton clipping algorithm is used in computer graphics. It allows clipping of a subject polygon by an arbitrarily shaped clip polygon window. It is generally applicable only in 2D. However, it can be used in 3D through visible surface determination and with improved efficiency through Z-ordering. Class 26 Curve clipping, Text clipping. Sat, Mar 12 Curve clipping procedures will involve non-linear equations (so requires more processing than for objects with linear boundaries). Text clipping clips the components of individual characters.

Class 27 Three Dimensional: 3-D geometric primitives Mon, Mar 14 The term geometric primitive in computer graphics and CAD systems is used in various senses, with the common meaning of the simplest (i.e. 'atomic' or irreducible) geometric objects that the system can handle (draw, store). Sometimes the subroutines that draw the corresponding objects are called "geometric primitives" as well. The most "primitive" primitives are point and straight line segment, which were all that early vector graphics systems had. In constructive solid geometry, primitives are simple geometric shapes such as a cube, cylinder, sphere, cone, pyramid. Class 28 3-D Object representation Wed, Mar 16 In 3D computer graphics, 3D modeling is the process of developing a mathematical representation of any threedimensional surface of an object (either inanimate or living) via specialized software. The product is called a 3D model. Types of objects: geometrical shapes, trees, clouds, rocks, glass, hair, furniture, human body etc. Class 29 Fri, Mar 18 3-D Transformation 3D Geometrical Transformations 3D point representation Translation Scaling, reflection Shearing Rotations about x, y and z axis Composition of rotations Rotation about an arbitrary axis Transforming planes Class 30 3-D viewing, projections, 3-D Clipping. Sat, Mar 19 Viewing and Projection Our eyes collapse 3-D world to 2-D retinal image(brain then has to reconstruct 3D) In CG, this process occurs by projection Projection has two parts: Viewing transformations: camera position and direction Perspective/orthographic transformation: reduces 3-D to 2-D Class 31 Curves and Surfaces: Quadric surfaces Mon, Mar 21 Curves (and surfaces) are specified by the user in terms of points and are constructed in an interactive process. Certain curve and surface methods start with points and perhaps also vectors and compute a curve or a surface that passes close to the points but not necessarily through them. Such points are known as control points and the curve or the surface defined by them is referred to as an approximating curve or surface. Class 32 Spheres, Ellipsoid, Blobby objects Fri, Mar 25 In computer graphics, sphere mapping (or spherical environment mapping) is a type of reflection mapping that approximates reflective surfaces by considering the environment to be an infinitely far-away spherical wall. an ellipse is a curve on a plane surrounding two focal points such that a straight line drawn from one of the focal points to any point on the curve and then back to the other focal point has the same length for every point on the curve. Blobby Objects: By a blobby object we mean a non rigid object. That is things, like cloth, rubber, liquids,water droplets, etc. These objects tend to exhibit a degree of fluidity. Class 33 Sat, Mar 26 Introductory concepts of Spline

A spline curve is a mathematical representation for which it is easy to build an interface that will allow a user to design and control the shape of complex curves and surfaces. Class 34 Bspline and Bezier curves and surfaces Mon, Mar 28 A Bezier curve is defined by 4 points (two end points and two control points) according to a specific algorithm. A Bezier spline is a bunch of these Bezier curves linked together (often with the control points and endpoints lined up so they look like one continuous curve). Class 35 Hidden Lines and Surfaces: Back Face Detection algorithm Wed, Mar 30 Hidden surface determination (also known as hidden surface removal (HSR), occlusion culling (OC) or visible surface determination (VSD)) is the process used to determine which surfaces and parts of surfaces are not visible from a certain viewpoint. A hidden surface determination algorithm is a solution to the visibility problem, which was one of the first major problems in the field of 3D computer graphics. The process of hidden surface determination is sometimes called hiding, and such an algorithm is sometimes called a hider. Class 36 Depth buffer method Thurs, Mar 31 Z-buffering, also known as depth buffering, is the management of image depth coordinates in threedimensional (3-D) graphics, usually done in hardware, sometimes in software. It is one solution to the visibility problem, which is the problem of deciding which elements of a rendered scene are visible, and which are hidden. Class 37 A- buffer method, Scan line method Fri, April 1 A-buffer also known as anti-aliased, area-averaged or accumulation buffer, is a general hidden surface mechanism suited to medium scale virtual memory computers. It resolves visibility among an arbitrary collection of opaque, transparent, and intersecting objects. Using an easy to compute Fourier window (box filter), it increases the effective image resolution many times over the Z-buffer, with a moderate increase in cost. Class 38 Basic illumination models Ambient light Sat, April 2 From Physics we can derive models, called "illumination models", of how light reflects from surfaces and produces what we perceive as color. In general, light leaves some light source, e.g. a lamp or the sun, is reflected from many surfaces and then finally reflected to our eyes, or through an image plane of a camera. Class 39 Diffuse reflection, Specular reflection Mon,April 4 Reflection of rough surfaces such as clothing, paper, and the asphalt roadway leads to a type of reflection known as diffuse reflection. Reflection of smooth surfaces such as mirrors or a calm body of water leads to a type of reflection known as specular reflection. Class 40 Phong model, Combined approach Wed, April 6 The Phong reflection model (also called Phong illumination or Phong lighting) is an empirical model of the local illumination of points on a surface. Class 41 Warn model Fri, April 8 The Warn model provides a method for simulating studio lighting effects by controlling light intensity in different directions. Class 42 Intensity Attenuation Sat, April 9

To produce realistic lighting effects, our illumination model should take this intensity attenuation into account. Class 43 Color consideration Mon, April 11 Most graphics displays of realistic scenes are in color. But the illumination model we have described so far considers only monochromatic lighting effects. Class 44 Transparency and Shadows. Wed, April 13 A transparent surface, in general, produces both reflected and transmitted light. The relative contribution of the transmitted light depends on the degree of transparency of the surface and whether any light sources or illuminated surfaces are behind the transparent surface. Assignment: Review: Final Concept, Model, and Schedule Prepare a 10-minute (maximum) presentation of your (single) selected product concept. The presentation should include a review of your mission statement, customer needs, selected concept, and your key target specifications. As part of your presentation, demonstrate some form of proof-of-concept prototype model. Hand in this schedule you do not need to make it part of your presentation in class. Describe your team's process. Comment on the process and the results. Assignment: Drawings, Plans, and Revised Schedule Due Class 15 I have given to draw charts of computers and other diagrams. List the web resources and vendors you have found to be helpful. Make a drawing or sketch of the production version of the product. Describe the differences between the prototype you will build and the production product. Briefly explain how the production product would be manufactured. Assignment: Due Class 27 Prepare a model as described in CHAPTER 5 of the text. Explain the scenario you are analyzing (startup activity, established manufacturer, etc.). Assignment: Final Presentation and Demonstration Due Monday November 24 Prepare a 15-minute presentation describing and demonstrating your product. Your presentation should concentrate on the product itself, although you may wish to emphasize any particularly impressive portions of your development process. An effective presentation includes color photographs or video presentation along with a live display of the hardware. This presentation should be of the quality you would make to convince a top management group to purchase the rights to your product or to fund its final development and launch. A panel of experts will observe your presentations and evaluate the products. Be prepared to answer questions about all aspects of your project. Create and demonstrate a web page designed to promote your product (optional).