Chapter 3: Graphics Output Primitives. OpenGL Line Functions. OpenGL Point Functions. Line Drawing Algorithms
|
|
- Joseph Gibbs
- 6 years ago
- Views:
Transcription
1 Chater : Grahics Outut Primitives Primitives: functions in grahics acage that we use to describe icture element Points and straight lines are the simlest rimitives Some acages include circles, conic sections, quadric surfaces, sline curves and surfaces, and olygon color area Two-Dimensional World Coordinate Reference Frame in OenGL glmatrixmode(gl_projection); glloadidentity(); gluorthod (xmin, xmax, ymin, ymax); Video Screen Y max Dislay Window Y min X min X max OenGL Point Functions OenGL Line Functions OenGL function to state coordinates values for oint glvertex* (); where (*) suffix code required A glvertexmust be laced between glbeginand glend glbegin(gl_points); glvertex* (); glbegin(gl_points); glvertexi (, ); glvertexi (, ); glvertexi (, ); intnt [] = {, ; intnt [] = {, ; intnt[] = {, ; glbegin(gl_points); glvertexiv (nt); glvertexiv (nt); glvertexiv (nt); Straight line segments between each successive endoints glbegin (GL_LINES); glvertexiv ( ); glvertexiv ( ); glvertexiv ( ); glvertexiv ( ); OenGL Line Functions A sequence of connected line segments between first and last endoints glbegin (GL_LINE_STRIP); glvertexiv (); glvertexiv (); glvertexiv (); glvertexiv (); glvertexiv (); Last coordinate is connected to the first endoint glbegin (GL_LINE_LOOP); glvertexiv (); glvertexiv (); glvertexiv (); glvertexiv (); glvertexiv (); Line Drawing Algorithms Programmer secifies (x, y) values of end ixels Need algorithm to figure out which intermediate ixels are on line ath Pixel (x, y) values constrained to integer values Actual comuted intermediate line values may be floats Rounding may be required. E.g. comuted oint (.,.) rounded to (, ) Rounded ixel value is off actual line ath (jaggy!!) Sloed lines end u having jaggies Vertical, horizontal lines, no jaggies
2 Line Drawing Algorithms Line Drawing Algorithms Line: (, ) (, ) Which intermediate ixels to turn on? Sloe-intercet line equation y = m. x + b m : sloe of the line, b : y intercet Given two end oints (x, y ) and (x end, y end ), how to comute m and b? m = (y end -y ) / (x end -x ) b = y -m. x y end y Examle: Find the sloe of (, ) and (, ) m = ( - ) / ( ) = / =. x x end DDA (Digital Differential Analyzer) DDA (Digital Differential Analyzer) A line is samled at unit intervals in one coordinates and the corresonding integer values nearest the line ath are determined for the other coordinate Case (m <= ) : samle at unit x intervals ( x = ), comuter successive y values as y + = y + m Case (m > ) : samle at unit y intervals ( y = ), comuter successive x values as x + = x + / m m> m= m <, y + = y + m x = x + y = y + m x = x + y = y + m m >, x + = x + / m y = y + x = x + / m y = y + x = x + / m m< inline int round (const float a) { return int (a +.); DDA code void linedda (int x, int y, int xend, int yend) { int dx = xend - x, dy = yend - y, stes; float xincrement, yincrement, x = x, y = y; if (fabs (dx) > fabs (dy)) stes = fabs (dx); else stes = fabs (dy); xincrement = float (dx) / float (stes); yincrement = float (dy) / float (stes); Bresenham s Line Algorithm Accurate, efficient, and uses only incremental integer calculations Samling at unit intervals, decide which of two ossible ixel ositions is closer to the line ath?? setpixel (round (x), round (y)); for (int i = ; i < stes; i++) { x += xincrement; y += yincrement; setpixel (round (x), round (y));
3 Bresenham s Line Algorithm Bresenham s Line Algorithm y + y + y + y x x + x + x + y + y y x + d uer d lower Consider ositive sloe less than. Samling at osition x + = x +, decide (x +, y ) or (x +, y + ) y= m (x + ) + b d lower = y -y = m (x + ) + b y d uer = (y + ) - y = y + - m (x + ) b Determine which ixel is closer based on the difference d lower -d uer = m (x + ) y + b Substitute m = y / x so it involves only integer calculations d lower -d uer = ( y/ x) (x + ) y + b x (d lower -d uer ) = y (x + ) x y + x (b ) Bresenham s Line Algorithm P is a decision arameter for the thste P = x (d lower - d uer ) P = y. x - x. y + y + x(b ) if P is negative then ixel y is closer that (y + ) At ste + P + = y. x + - x. y + + c P + -P = y (x + -x )- x(y + - y ) But x + = x + P + = P + y - x(y + -y ) y + y is either or, deending on the sign of P c Bresenham s Line Algorithm for m <.. Calculate the constants x, y, y, and y - x, and obtain the starting value for decision arameter as P = y - x. At each x along the line, starting at =, erform the following test. If P <, the next oint to lot is (x +, y ) and P + = P + y Otherwise, the next oint is (x +, y + ) and P + = P + y - x. Perform ste x times At the starting ixel osition (x, y ) P = y - x Bresenham s Examle Line with endoints (, ) and (, ) m =., x =, y =, P = y - x =, y =, y - x = - Plot initial oint (x, y ) = (, ), and determine successive ixel ositions P - - (x +, y +) (, ) (, ) (, ) (, ) (, ) (, ) (, ) (, ) (, ) (, ) Circle Drawing Algorithms A circle is a set of oints that are a given distance r from center oint (x c, y c ) ( ) + ( ) = = ± ( ) The calculations are not very efficient. The square (multily) oerations To mae our circle drawing algorithm more efficient is that circles centred at (, ) have eightway symmetry y c (-y, x) (-y, -x) x c (-x, y) (-x, -y) r θ (x, y) (y, x) (y, -x) (x, -y)
4 const float DEGRAD =./; void drawcircle (float radius) { glbegin (GL_LINE_LOOP); Circle Drawing Algorithms Another way: use olar coordinates r and θto exress circle in arameter olar form = +cos y = +sin r (x, y) sin θ cos Assume that we have just lotted oint (x, y ) The next oint is a choice between (x +, y ) and (x +, y -) We would lie to choose the oint that is nearest to the actual circle So how do we mae this choice? (x, y ) (x +, y ) (x +, y -) for (int i=; i < ; i++) { float deginrad = i * DEGRAD; glvertexf (cos (deginrad) * radius, sin (deginrad) * radius); Let s rearrange the equation of the circle slightly to give us: f circ ( x, y) = x + y r The equation evaluates as follows: f circ <, if ( x, y) is inside the circle boundary ( x, y) =, if ( x, y) is on the circle boundary >, if ( x, y) is outside the circle boundary By evaluating this function at the midoint between the candidate ixels we can mae our decision Assuming we have just lotted the ixel at (x, y ) so we need to choose between (x +, y ) and (x +,y - ) Our decision variable can be defined as: = fcirc( x +, y ) = ( x + ) + ( y ) r If < the midoint is inside the circle and the ixel at y is closer to the circle Otherwise the midoint is outside and y - is closer To ensure things are as efficient as ossible we can do all of our calculations incrementally First consider: ( + = fcirc x + +, y + ) or: = [( x + ) + ] + ( y ) r + + = + ( x + ) + ( y + y ) ( y + y ) + where y + is either y or y - deending on the sign of The first decision variable at osition (x, y ) = (, r) is given as: = fcirc r (, ) = + r ( ) r = r Then if < then the next decision variable is given as: + = + x + + If > then the decision variable is: + = + x + + y+
5 The The. Inut radius rand circle centre (x c, y c ), then set the coordinates for the first oint on the circumference of a circle centred on the origin as: x, y ) = (, ) ( r. Calculate the initial value of the decision arameter as: = r. Starting with = at each osition x, erform the following test. If <, the next oint along the circle centred on (, ) is (x +, y ) and: + = + x + + Otherwise the next oint along the circle is (x +, y -) and: + = + x + + y +. Determine symmetry oints in the other seven octants. Move each calculated ixel osition (x, y) onto the circular ath centred at (x c, y c ) to lot the coordinate values: x + = x x c y = y + yc. Reeat stes to until x >= y Midoint Circle Examle Given radius r = Determine osition along the circle octant in the first quadrant from x = to x = y P = r = -, x =, y = y = x Polygon Polygon is a lane figure secified by set of three or more coordinate ositions, called vertices If all interior angles of a olygon are less than or equal to degrees, the olygon is convex A olygon that is not convex is called a concaveolygon P (x +, y +) (, ) (, ) (, ) (, ) (, ) (, ) (, ) x + y + < > Convex Concave OenGL Polygon Fill Area Functions glrect* (x, y, x, y); one corner is at coordinate osition (x, y) and the oosite corner is at osition (x, y) glrect(,,, );,, OenGL Polygon Fill Area Functions glbegin(gl_polygon); glvertexiv (); glvertexiv (); glvertexiv (); glvertexiv (); glvertexiv (); glvertexiv (); glbegin(gl_triangles); glvertexiv (); glvertexiv (); glvertexiv (); glvertexiv (); glvertexiv (); glvertexiv ();
6 OenGL Polygon Fill Area Functions glbegin(gl_triangle_strip); glvertexiv (); glvertexiv (); glvertexiv (); glvertexiv (); glvertexiv (); glvertexiv (); glbegin(gl_triangle_fan); glvertexiv (); glvertexiv (); glvertexiv (); glvertexiv (); glvertexiv (); glvertexiv (); N triangles N triangles OenGL Polygon Fill Area Functions glbegin(gl_quads); glvertexiv (); glvertexiv (); glvertexiv (); glvertexiv (); glvertexiv (); glvertexiv (); glvertexiv (); glvertexiv (); glbegin(gl_quad_strip); glvertexiv (); glvertexiv (); glvertexiv (); glvertexiv (); glvertexiv (); glvertexiv (); glvertexiv (); glvertexiv ();
CS 548: COMPUTER GRAPHICS DRAWING LINES AND CIRCLES SPRING 2015 DR. MICHAEL J. REALE
CS 548: COMPUTER GRAPHICS DRAWING LINES AND CIRCLES SPRING 05 DR. MICHAEL J. REALE OPENGL POINTS AND LINES OPENGL POINTS AND LINES In OenGL, there are different constants used to indicate what ind of rimitive
More informationCS335 Fall 2007 Graphics and Multimedia. 2D Drawings: Lines
CS335 Fall 007 Grahics and Multimedia D Drawings: Lines Primitive Drawing Oerations Digital Concets of Drawing in Raster Arras PIXEL is a single arra element at x, - No smaller drawing unit exists Px,
More informationCS 450: COMPUTER GRAPHICS REVIEW: DRAWING LINES AND CIRCLES SPRING 2015 DR. MICHAEL J. REALE
CS 450: COMPUTER GRAPHICS REVIEW: DRAWING LINES AND CIRCLES SPRING 2015 DR. MICHAEL J. REALE DRAWING PRIMITIVES: LEGACY VS. NEW Legacy: specify primitive in glbegin() glbegin(gl_points); glvertex3f(1,5,0);
More informationCSCI 4620/8626. Coordinate Reference Frames
CSCI 4620/8626 Computer Graphics Graphics Output Primitives Last update: 2014-02-03 Coordinate Reference Frames To describe a picture, the world-coordinate reference frame (2D or 3D) must be selected.
More informationIn today s lecture we ll have a look at: A simple technique The mid-point circle algorithm
Drawing Circles In today s lecture we ll have a look at: Circle drawing algorithms A simple technique The mid-point circle algorithm Polygon fill algorithms Summary raster drawing algorithms A Simple Circle
More informationComputer Graphics : Bresenham Line Drawing Algorithm, Circle Drawing & Polygon Filling
Computer Graphics : Bresenham Line Drawing Algorithm, Circle Drawing & Polygon Filling Downloaded from :www.comp.dit.ie/bmacnamee/materials/graphics/006- Contents In today s lecture we ll have a loo at:
More informationGRAPHICS OUTPUT PRIMITIVES
CHAPTER 3 GRAPHICS OUTPUT PRIMITIVES LINE DRAWING ALGORITHMS DDA Line Algorithm Bresenham Line Algorithm Midpoint Circle Algorithm Midpoint Ellipse Algorithm CG - Chapter-3 LINE DRAWING Line drawing is
More informationOpenGL Graphics System. 2D Graphics Primitives. Drawing 2D Graphics Primitives. 2D Graphics Primitives. Mathematical 2D Primitives.
D Graphics Primitives Eye sees Displays - CRT/LCD Frame buffer - Addressable pixel array (D) Graphics processor s main function is to map application model (D) by projection on to D primitives: points,
More informationComputer Graphics. Computer Graphics. Lecture 3 Line & Circle Drawing
Comuter Grahics Comuter Grahics Lecture 3 Line & Circle Drawing Comuter Grahics Towards the Ideal Line We can onl do a discrete aroimation Illuminate iels as close to the true ath as ossible, consider
More informationScan Conversion. CMP 477 Computer Graphics S. A. Arekete
Scan Conversion CMP 477 Computer Graphics S. A. Areete What is Scan-Conversion? 2D or 3D objects in real world space are made up of graphic primitives such as points, lines, circles and filled polygons.
More informationOverview of Computer Graphics
Application of Computer Graphics UNIT- 1 Overview of Computer Graphics Computer-Aided Design for engineering and architectural systems etc. Objects maybe displayed in a wireframe outline form. Multi-window
More informationDr Pavan Chakraborty IIIT-Allahabad
GVC-43 Lecture - 5 Ref: Donald Hearn & M. Pauline Baker, Comuter Grahics Foley, van Dam, Feiner & Hughes, Comuter Grahics Princiles & Practice Dr Pavan Chakraborty IIIT-Allahabad Summary of line drawing
More informationOutput Primitives Lecture: 4. Lecture 4
Lecture 4 Circle Generating Algorithms Since the circle is a frequently used component in pictures and graphs, a procedure for generating either full circles or circular arcs is included in most graphics
More informationConvex Hulls. Helen Cameron. Helen Cameron Convex Hulls 1/101
Convex Hulls Helen Cameron Helen Cameron Convex Hulls 1/101 What Is a Convex Hull? Starting Point: Points in 2D y x Helen Cameron Convex Hulls 3/101 Convex Hull: Informally Imagine that the x, y-lane is
More informationMODULE - 4. e-pg Pathshala
e-pg Pathshala MODULE - 4 Subject : Computer Science Paper: Computer Graphics and Visualization Module: Midpoint Circle Drawing Procedure Module No: CS/CGV/4 Quadrant 1 e-text Before going into the Midpoint
More informationChapter 8: Implementation- Clipping and Rasterization
Chapter 8: Implementation- Clipping and Rasterization Clipping Fundamentals Cohen-Sutherland Parametric Polygons Circles and Curves Text Basic Concepts: The purpose of clipping is to remove objects or
More informationComputer Graphics. Chapter 3 Computer Graphics Software
Computer Graphics Chapter 3 Computer Graphics Software Outline Graphics Software Packages Introduction to OpenGL Example Program 2 3 Graphics Software Software packages General Programming Graphics Packages
More informationOutput Primitives Lecture: 3. Lecture 3. Output Primitives. Assuming we have a raster display, a picture is completely specified by:
Lecture 3 Output Primitives Assuming we have a raster display, a picture is completely specified by: - A set of intensities for the pixel positions in the display. - A set of complex objects, such as trees
More informationUNIT 2 GRAPHIC PRIMITIVES
UNIT 2 GRAPHIC PRIMITIVES Structure Page Nos. 2.1 Introduction 46 2.2 Objectives 46 2.3 Points and Lines 46 2.4 Line Generation Algorithms 48 2.4.1 DDA Algorithm 49 2.4.2 Bresenhams Line Generation Algorithm
More informationComputer Graphics. Lecture 3 Graphics Output Primitives. Somsak Walairacht, Computer Engineering, KMITL
Computer Graphics Lecture 3 Graphics Output Primitives Somsa Walairacht, Computer Engineering, KMITL Outline Line Drawing Algorithms Circle-, Ellipse-Generating Algorithms Fill-Area Primitives Polgon Fill
More informationOUTPUT PRIMITIVES. CEng 477 Introduction to Computer Graphics METU, 2007
OUTPUT PRIMITIVES CEng 477 Introduction to Computer Graphics METU, 007 Recap: The basic forward projection pipeline: MCS Model Model Modeling Transformations M M 3D World Scene Viewing Transformations
More informationGraphics Output Primitives Hearn & Baker Chapter 3. Some slides are taken from Robert Thomsons notes.
Graphics Output Primitives Hearn & Baker Chapter 3 Some slides are taken from Robert Thomsons notes. OVERVIEW Coordinate reference frames OpenGL Point & Line functions Line drawing algorithms Curve drawing
More informationComputer Graphics Lecture Notes
Computer Graphics Lecture Notes UNIT- Overview of Computer Graphics. Application of Computer Graphics Computer-Aided Design for engineering and architectural systems etc. Objects maybe displayed in a wireframe
More informationOutput Primitives. Dr. S.M. Malaek. Assistant: M. Younesi
Output Primitives Dr. S.M. Malaek Assistant: M. Younesi Output Primitives Output Primitives: Basic geometric structures (points, straight line segment, circles and other conic sections, quadric surfaces,
More informationAnnouncements. Midterms graded back at the end of class Help session on Assignment 3 for last ~20 minutes of class. Computer Graphics
Announcements Midterms graded back at the end of class Help session on Assignment 3 for last ~20 minutes of class 1 Scan Conversion Overview of Rendering Scan Conversion Drawing Lines Drawing Polygons
More informationAssignment 1. Simple Graphics program using OpenGL
Assignment 1 Simple Graphics program using OpenGL In this assignment we will use basic OpenGL functions to draw some basic graphical figures. Example: Consider following program to draw a point on screen.
More informationRaster Graphics Algorithms
Overview of Grahics Pieline Raster Grahics Algorithms D scene atabase traverse geometric moel transform to worl sace transform to ee sace scan conversion Line rasterization Bresenham s Mioint line algorithm
More information521493S Computer Graphics Exercise 3 (Chapters 6-8)
521493S Comuter Grahics Exercise 3 (Chaters 6-8) 1 Most grahics systems and APIs use the simle lighting and reflection models that we introduced for olygon rendering Describe the ways in which each of
More informationThis library uses only GL functions but contains code for creating common objects and simplifying viewing.
PES Institute of Technology, Bangalore South Campus (Formerly PES School of Engineering) (Hosur Road, 1KM before Electronic City, Bangalore-560 100) INTERNAL TEST (SCHEME AND SOLUTION) 1 Subject Name:
More informationChapter - 2: Geometry and Line Generations
Chapter - 2: Geometry and Line Generations In Computer graphics, various application ranges in different areas like entertainment to scientific image processing. In defining this all application mathematics
More informationDigital Differential Analyzer Bresenhams Line Drawing Algorithm
Bresenham s Line Generation The Bresenham algorithm is another incremental scan conversion algorithm. The big advantage of this algorithm is that, it uses only integer calculations. Difference Between
More informationIntroduction to Computer Graphics (CS602) Lecture 05 Line Drawing Techniques
Introduction to Computer Graphics (CS602) Lecture 05 Line Drawing Techniques 5.1 Line A line, or straight line, is, roughly speaking, an (infinitely) thin, (infinitely) long, straight geometrical object,
More informationUnit 2 Output Primitives and their Attributes
Unit 2 Output Primitives and their Attributes Shapes and colors of the objects can be described internally with pixel arrays or with sets of basic geometric structures, such as straight line segments and
More informationEinführung in Visual Computing
Einführung in Visual Computing 186.822 Rasterization Werner Purgathofer Rasterization in the Rendering Pipeline scene objects in object space transformed vertices in clip space scene in normalized device
More information2D Image Synthesis. 2D image synthesis. Raster graphics systems. Modeling transformation. Vectorization. u x u y 0. o x o y 1
General scheme of a 2D CG application 2D Image Synthesis Balázs Csébfalvi modeling image synthesis Virtual world model world defined in a 2D plane Department of Control Engineering and Information Technology
More informationComputer Graphics: Line Drawing Algorithms
Computer Graphics: Line Drawing Algorithms 1 Graphics hardware The problem scan conversion Considerations Line equations Scan converting algorithms A very simple solution The DDA algorithm, Bresenham algorithm
More informationScan Conversion. Drawing Lines Drawing Circles
Scan Conversion Drawing Lines Drawing Circles 1 How to Draw This? 2 Start From Simple How to draw a line: y(x) = mx + b? 3 Scan Conversion, a.k.a. Rasterization Ideal Picture Raster Representation Scan
More informationComputer Graphics. Making Pictures. Computer Graphics CSC470 1
Computer Graphics Making Pictures Computer Graphics CSC470 1 Getting Started Making Pictures Graphics display: Entire screen (a); windows system (b); [both have usual screen coordinates, with y-axis y
More informationCSC Computer Graphics
7//7 CSC. Computer Graphics Lecture Kasun@dscs.sjp.ac.l Department of Computer Science Universit of Sri Jaewardanepura Line drawing algorithms DDA Midpoint (Bresenham s) Algorithm Circle drawing algorithms
More informationRasterization: Geometric Primitives
Rasterization: Geometric Primitives Outline Rasterizing lines Rasterizing polygons 1 Rasterization: What is it? How to go from real numbers of geometric primitives vertices to integer coordinates of pixels
More informationComputer Graphics: Graphics Output Primitives Line Drawing Algorithms
Computer Graphics: Graphics Output Primitives Line Drawing Algorithms By: A. H. Abdul Hafez Abdul.hafez@hku.edu.tr, 1 Outlines 1. Basic concept of lines in OpenGL 2. Line Equation 3. DDA Algorithm 4. DDA
More informationCS 4731: Computer Graphics Lecture 21: Raster Graphics: Drawing Lines. Emmanuel Agu
CS 4731: Computer Graphics Lecture 21: Raster Graphics: Drawing Lines Emmanuel Agu 2D Graphics Pipeline Clipping Object World Coordinates Applying world window Object subset window to viewport mapping
More informationGraphics Programming
Graphics Programming 3 rd Week, 2011 OpenGL API (1) API (application programming interface) Interface between an application program and a graphics system Application Program OpenGL API Graphics Library
More informationCross products. p 2 p. p p1 p2. p 1. Line segments The convex combination of two distinct points p1 ( x1, such that for some real number with 0 1,
CHAPTER 33 Comutational Geometry Is the branch of comuter science that studies algorithms for solving geometric roblems. Has alications in many fields, including comuter grahics robotics, VLSI design comuter
More informationTime: 3 hours Max. Marks: 80. Note: Answer FIVE full questions, choosing one full question from each module.
USN 6 th Semester CBCS Scheme Model Question Paper 1 Department of Computer Science and Engineering, C. Byregowda Institute of Technology Computer Graphics and Visualization Time: 3 hours Max. Marks: 80
More informationUNIT 2 Scan Conversion Techniques and Image Representation Unit-02/Lecture-01
UNIT 2 Scan Conversion Techniques and Image Representation Unit-02/Lecture-01 Scan Conversion [RGPV/DEC-2008(10)] Scan conversion or scan rate converting is a technique for changing the vertical / horizontal
More informationComputer Graphics, Chapt 08
Computer Graphics, Chapt 08 Creating an Image Components, parts of a scene to be displayed Trees, terrain Furniture, walls Store fronts and street scenes Atoms and molecules Stars and galaxies Describe
More informationAbout the Tutorial. Audience. Prerequisites. Copyright & Disclaimer. Computer Graphics
r About the Tutorial To display a picture of any size on a computer screen is a difficult process. Computer graphics are used to simplify this process. Various algorithms and techniques are used to generate
More informationFrom Ver(ces to Fragments: Rasteriza(on
From Ver(ces to Fragments: Rasteriza(on From Ver(ces to Fragments 3D vertices vertex shader rasterizer fragment shader final pixels 2D screen fragments l determine fragments to be covered l interpolate
More informationComputer Graphics D Graphics Algorithms
! Computer Graphics 2014! 2. 2D Graphics Algorithms Hongxin Zhang State Key Lab of CAD&CG, Zhejiang University 2014-09-26! Screen Nikon D40 Sensors 3 Rasterization - The task of displaying a world modeled
More informationCS 428: Fall Introduction to. Geometric Transformations. Andrew Nealen, Rutgers, /15/2010 1
CS 428: Fall 21 Introduction to Comuter Grahics Geometric Transformations Andrew Nealen, Rutgers, 21 9/15/21 1 Toic overview Image formation and OenGL (last week) Modeling the image formation rocess OenGL
More informationRasterization, or What is glbegin(gl_lines) really doing?
Rasterization, or What is glbegin(gl_lines) really doing? Course web page: http://goo.gl/eb3aa February 23, 2012 Lecture 4 Outline Rasterizing lines DDA/parametric algorithm Midpoint/Bresenham s algorithm
More informationSolution Notes. COMP 151: Terms Test
Family Name:.............................. Other Names:............................. ID Number:............................... Signature.................................. Solution Notes COMP 151: Terms
More informationGraphics Programming. August 31, Programming of the Sierpinski gasket. Programming with OpenGL and C/C++
Computer Graphics Graphics Programming August 31, 2005 Contents Our Goal in This Chapter Programming of the Sierpinski gasket How To? Programming with OpenGL and C/C++ OpenGL API (Application Programmer
More informationCS2401 Computer Graphics
UNIT I - 2D PRIMITIVES Output primitives Line, Circle and Ellipse drawing algorithms - Attributes of output primitives Two dimensional Geometric transformation - Two dimensional viewing Line, Polygon,
More informationCS602 MCQ,s for midterm paper with reference solved by Shahid
#1 Rotating a point requires The coordinates for the point The rotation angles Both of above Page No 175 None of above #2 In Trimetric the direction of projection makes unequal angle with the three principal
More informationCOT5405: GEOMETRIC ALGORITHMS
COT5405: GEOMETRIC ALGORITHMS Objects: Points in, Segments, Lines, Circles, Triangles Polygons, Polyhedra R n Alications Vision, Grahics, Visualizations, Databases, Data mining, Networks, GIS Scientific
More informationTopic #1: Rasterization (Scan Conversion)
Topic #1: Rasterization (Scan Conversion) We will generally model objects with geometric primitives points, lines, and polygons For display, we need to convert them to pixels for points it s obvious but
More informationUNIVERSITY OF NEBRASKA AT OMAHA Computer Science 4620/8626 Computer Graphics Spring 2014 Homework Set 1 Suggested Answers
UNIVERSITY OF NEBRASKA AT OMAHA Computer Science 4620/8626 Computer Graphics Spring 2014 Homework Set 1 Suggested Answers 1. How long would it take to load an 800 by 600 frame buffer with 16 bits per pixel
More informationLine Drawing. Foundations of Computer Graphics Torsten Möller
Line Drawing Foundations of Computer Graphics Torsten Möller Rendering Pipeline Hardware Modelling Transform Visibility Illumination + Shading Perception, Interaction Color Texture/ Realism Reading Angel
More informationComputer Graphics D Graphics Algorithms
Computer Graphics 2015 2. 2D Graphics Algorithms Hongxin Zhang State Key Lab of CAD&CG, Zhejiang University 2015-09-21 Screen - Linear Structure Nikon D40 Sensors 3 RGBW Camera Sensor RGBW Camera Sensor
More informationClipping and Scan Conversion
15-462 Computer Graphics I Lecture 14 Clipping and Scan Conversion Line Clipping Polygon Clipping Clipping in Three Dimensions Scan Conversion (Rasterization) [Angel 7.3-7.6, 7.8-7.9] March 19, 2002 Frank
More informationComputer Graphics Prof. Sukhendu Das Dept. of Computer Science and Engineering Indian Institute of Technology, Madras Lecture - 14
Computer Graphics Prof. Sukhendu Das Dept. of Computer Science and Engineering Indian Institute of Technology, Madras Lecture - 14 Scan Converting Lines, Circles and Ellipses Hello everybody, welcome again
More informationLecture 3: Geometric Algorithms(Convex sets, Divide & Conquer Algo.)
Advanced Algorithms Fall 2015 Lecture 3: Geometric Algorithms(Convex sets, Divide & Conuer Algo.) Faculty: K.R. Chowdhary : Professor of CS Disclaimer: These notes have not been subjected to the usual
More informationTeacher Assistant : Tamir Grossinger Reception hours: by - Building 37 / office -102 Assignments: 4 programing using
Teacher Assistant : Tamir Grossinger email: tamirgr@gmail.com Reception hours: by email - Building 37 / office -102 Assignments: 4 programing using C++ 1 theoretical You can find everything you need in
More informationFrom Vertices to Fragments: Rasterization. Reading Assignment: Chapter 7. Special memory where pixel colors are stored.
From Vertices to Fragments: Rasterization Reading Assignment: Chapter 7 Frame Buffer Special memory where pixel colors are stored. System Bus CPU Main Memory Graphics Card -- Graphics Processing Unit (GPU)
More informationWrite C++/Java program to draw line using DDA and Bresenham s algorithm. Inherit pixel class and Use function overloading.
Group A Assignment No A1. Write C++/Java program to draw line using DDA and Bresenham s algorithm. Inherit pixel class and Use function overloading. Aim: To draw line using DDA and Bresenham s algorithm
More informationAndrew Yenalavitch Homework 1 CSE Fall 2014
Andrew Yenalavitch Homework 1 CSE 420 - Fall 2014 1.) ( 20 points ) In the class, we have discussed how to draw a line given by y = m x + b using Besenham's algorithm with m 1. Extend the algorithm to
More informationCS 450: COMPUTER GRAPHICS RASTERIZING LINES SPRING 2016 DR. MICHAEL J. REALE
CS 45: COMPUTER GRAPHICS RASTERIZING LINES SPRING 6 DR. MICHAEL J. REALE OBJECT-ORDER RENDERING We going to start on how we will perform object-order rendering Object-order rendering Go through each OBJECT
More information1 Introduction to Graphics
1 1.1 Raster Displays The screen is represented by a 2D array of locations called pixels. Zooming in on an image made up of pixels The convention in these notes will follow that of OpenGL, placing the
More informationLab Manual. Computer Graphics. T.E. Computer. (Sem VI)
Lab Manual Computer Graphics T.E. Computer (Sem VI) Index Sr. No. Title of Programming Assignments Page No. 1. Line Drawing Algorithms 3 2. Circle Drawing Algorithms 6 3. Ellipse Drawing Algorithms 8 4.
More informationCS 450: COMPUTER GRAPHICS 2D TRANSFORMATIONS SPRING 2016 DR. MICHAEL J. REALE
CS 45: COMUTER GRAHICS 2D TRANSFORMATIONS SRING 26 DR. MICHAEL J. REALE INTRODUCTION Now that we hae some linear algebra under our resectie belts, we can start ug it in grahics! So far, for each rimitie,
More informationWindows and Viewports. Windows and Viewports. Windows and Viewports. Windows and Viewports. CSC 706 Computer Graphics
CSC 706 Computer Graphics World World Window, Screen Window and Viewport Setting Window and Viewport automatically Tiling Previously we looked at an OpenGL window where x and y were plotted as positive
More informationComputer Graphics. The Two-Dimensional Viewing. Somsak Walairacht, Computer Engineering, KMITL
Computer Graphics Chapter 6 The Two-Dimensional Viewing Somsak Walairacht, Computer Engineering, KMITL Outline The Two-Dimensional Viewing Pipeline The Clipping Window Normalization and Viewport Transformations
More informationCs602-computer graphics MCQS MIDTERM EXAMINATION SOLVED BY ~ LIBRIANSMINE ~
Cs602-computer graphics MCQS MIDTERM EXAMINATION SOLVED BY ~ LIBRIANSMINE ~ Question # 1 of 10 ( Start time: 08:04:29 PM ) Total Marks: 1 Sutherland-Hodgeman clipping algorithm clips any polygon against
More informationCOMPUTER GRAPHICS LAB # 3
COMPUTER GRAPHICS LAB # 3 Chapter 2: COMPUTER GRAPHICS by F.S HILLs. Initial steps in drawing figures (polygon, rectangle etc) Objective: Basic understanding of simple code in OpenGL and initial steps
More informationDrawing and Coordinate Systems
Drawing and Coordinate Systems Coordinate Systems World Coordinate system World window Screen Coordinate system Viewport Window to viewport mapping Screen Coordinate System Glut OpenGL (0,0) 0) Screen
More informationComputer Graphics. OpenGL
Computer Graphics OpenGL What is OpenGL? OpenGL (Open Graphics Library) is a library for computer graphics It consists of several procedures and functions that allow a programmer to specify the objects
More informationCS 543: Computer Graphics. Rasterization
CS 543: Computer Graphics Rasterization Robert W. Lindeman Associate Professor Interactive Media & Game Development Department of Computer Science Worcester Polytechnic Institute gogo@wpi.edu (with lots
More informationMeshing and Geometry
Meshing and Geometry Points in OpenGL glbegin(gl_points); glvertex2fv(p0); glvertex2fv(p1); p7 p0 p1 glvertex2fv(p2); glvertex2fv(p3); p6 p2 glvertex2fv(p4); glvertex2fv(p5); p5 p3 glvertex2fv(p6); glvertex2fv(p7);
More informationAN EXTENDED STIPPLE LINE ALGORITHM AND ITS CONVERGENCE ANALYSIS
Journal of Theoretical and Alied Information Technology AN EXTENDED STIPPLE LINE ALGORITHM AND ITS CONVERGENCE ANALYSIS ZHANDONG LIU, HAIJUN ZHANG, YONG LI, XIANGWEI QI, MUNINA YUSUFU Deartment of Comuter
More informationRASTERIZING POLYGONS IN IMAGE SPACE
On-Line Computer Graphics Notes RASTERIZING POLYGONS IN IMAGE SPACE Kenneth I. Joy Visualization and Graphics Research Group Department of Computer Science University of California, Davis A fundamental
More informationGeometry Primitives. Computer Science Department University of Malta. Sandro Spina Computer Graphics and Simulation Group. CGSG Geometry Primitives
Geometry Primitives Sandro Spina Computer Graphics and Simulation Group Computer Science Department University of Malta 1 The Building Blocks of Geometry The objects in our virtual worlds are composed
More informationChapter 3. Sukhwinder Singh
Chapter 3 Sukhwinder Singh PIXEL ADDRESSING AND OBJECT GEOMETRY Object descriptions are given in a world reference frame, chosen to suit a particular application, and input world coordinates are ultimately
More informationUNIT -8 IMPLEMENTATION
UNIT -8 IMPLEMENTATION 1. Discuss the Bresenham s rasterization algorithm. How is it advantageous when compared to other existing methods? Describe. (Jun2012) 10M Ans: Consider drawing a line on a raster
More informationPoints and lines. x x 1 + y 1. y = mx + b
Points and lines Point is the fundamental element of the picture representation. It is nothing but the position in a plan defined as either pairs or triplets of number depending on whether the data are
More informationvoid drawdot(glint x, GLint y) { glbegin(gl_points); glvertex2i(x,y); glend();
CSC 706 Computer Graphics Primitives, Stippling, Fitting In OpenGL Primitives Examples: GL_POINTS GL_LINES GL_LINE_STRIP GL_POLYGON GL_LINE_LOOP GL_ TRIANGLES GL_QUAD_STRIP GL_TRIANGLE_STRIP GL_TRIANGLE_FAN
More informationPainter s HSR Algorithm
Painter s HSR Algorithm Render polygons farthest to nearest Similar to painter layers oil paint Viewer sees B behind A Render B then A Depth Sort Requires sorting polygons (based on depth) O(n log n) complexity
More informationTrigonometric Functions
Similar Right-Angled Triangles Trigonometric Functions We lan to introduce trigonometric functions as certain ratios determined by similar right-angled triangles. By de nition, two given geometric gures
More informationCS621 Lab 1 Name: Ihab Zbib
CS621 Lab 1 Name: Ihab Zbib 1) The program draw.cpp draws two rectangles and two triangles. The program compiles and executes successfully. What follows are the snap shots of the output. Illustration 1:
More information2D Graphics Primitives II. Additional issues in scan converting lines. 1)Endpoint order. Want algorithms to draw the same pixels for each line
walters@buffalo.edu CSE 480/580 Lecture 8 Slide 1 2D Graphics Primitives II Additional issues in scan converting lines 1)Endpoint order Want algorithms to draw the same pixels for each line How handle?
More informationCS2401 Computer Graphics
CS24 Computer Graphics UNIT I - 2D PRIMITIVES Output primitives Line, Circle and Ellipse drawing algorithms - Attributes of output primitives Two dimensional Geometric transformation - Two dimensional
More informationEfficient Plotting Algorithm
Efficient Plotting Algorithm Sushant Ipte 1, Riddhi Agarwal 1, Murtuza Barodawala 1, Ravindra Gupta 1, Prof. Shiburaj Pappu 1 Computer Department, Rizvi College of Engineering, Mumbai, Maharashtra, India
More informationCS 450: COMPUTER GRAPHICS RASTERIZING CONICS SPRING 2016 DR. MICHAEL J. REALE
CS 45: COMPUTER GRAPHICS RASTERIZING CONICS SPRING 6 DR. MICHAEL J. REALE RASTERIZING CURVES OTHER THAN LINES When dealing with othe inds of cuves, we can daw it in one of the following was: Use elicit
More informationR asterisation. Part I: Simple Lines. Affine transformation. Transform Render. Rasterisation Line Rasterisation 2/16
ECM2410:GraphicsandAnimation R asterisation Part I: Simple Lines Rasterisation 1/16 Rendering a scene User space Device space Affine transformation Compose Transform Render Com pose from primitives (lines,
More informationI Internal Examination (Model Paper) B.Tech III Year VI semester, Computer Science & Engineering
I Internal Examination 2017-18 (Model Paper) B.Tech III Year VI semester, Computer Science & Engineering Subject: 6CS4 Computer Graphics & Multimedia Technology Time: 1:30 Hr M.M:40 Question No. Question
More informationDuc Nguyen CSE 420 Computer Graphics 10/10/2018 Homework 1
Duc Nguyen CSE 420 Computer Graphics 10/10/2018 Homework 1 1. The endpoints of a given line are (0, 0) and (18, 6). Compute the first 4 values of y manually using Bresenham's Line Algorithm as x steps
More informationThe Traditional Graphics Pipeline
Last Time? The Traditional Graphics Pipeline Participating Media Measuring BRDFs 3D Digitizing & Scattering BSSRDFs Monte Carlo Simulation Dipole Approximation Today Ray Casting / Tracing Advantages? Ray
More informationComputer Graphics. Lecture 2. Doç. Dr. Mehmet Gokturk
Computer Graphics Lecture 2 Doç. Dr. Mehmet Gokturk Mathematical Foundations l Hearn and Baker (A1 A4) appendix gives good review l Some of the mathematical tools l Trigonometry l Vector spaces l Points,
More informationConstrained Empty-Rectangle Delaunay Graphs
CCCG 2015, Kingston, Ontario, August 10 12, 2015 Constrained Emty-Rectangle Delaunay Grahs Prosenjit Bose Jean-Lou De Carufel André van Renssen Abstract Given an arbitrary convex shae C, a set P of oints
More information