Raster Graphics Algorithms

Size: px
Start display at page:

Download "Raster Graphics Algorithms"

Transcription

1 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 Mioint circle algorithm cli transform to D screen sace rasterize Mioint ellise algorithm an more Fille rimitives D image (frame-buffer values) Set 9-Oct, CMPT-6 : Hami Younes Set 9-Oct, CMPT-6 : Hami Younes Frame-buffer Moel D Scan Conversion Raster Disla: D arra of icture elements (iels) Piel can be set (grascale/color) Winow coorinates: iels centere at integers Geometric Primitives: D: oint, line, olgon, circle, D: oint, line, olheron, shere, Problem: Primitives are continuous, screen is iscrete Set 9-Oct, CMPT-6 : Hami Younes Set 9-Oct, CMPT-6 : Hami Younes D Scan Conversion () Line Rasterization Solution: comute iscrete aroimation Scan Conversion: Algorithms for efficient generation of the samles comrising this aroimation Scan converting D line segments Inut: segment en oints as integer values: (, ), (, ) Outut: set of iels lighten u Set 9-Oct, CMPT-6 : Hami Younes 5 Set 9-Oct, CMPT-6 : Hami Younes 6

2 Line Rasterization: Basic Math Review Line Rasterization: Basic Math Review Length of line segment between P an P Sloe = = Solving for or = m + b = + ( + ) P = (, ) P = (, ) P = (, ) L = ( ) + ( ) Mioint of a line segment between P an P + + P mi = (, ) Two lines are erenicular iff m = m Parametric form of line equation: = + t( ) = + t( ) Set 9-Oct, CMPT-6 : Hami Younes 7 Set 9-Oct, CMPT-6 : Hami Younes 8 Basic Line Algorithms A Naïve Algorithm Must: Comuter integer coorinates of iels which lie on or near a line Be efficient Create visuall satisfactor images: lines shoul aear straight lines shoul terminate accuratel lines shoul have constant ensit lines ensit shoul be ineenent of length an angle Alwas be efine increment in each ste Comute as a function of Roun (wh?) Set Piel (, Rn(()) ) = + ( + or = m + b ) m = = Set 9-Oct, CMPT-6 : Hami Younes 9 Set 9-Oct, CMPT-6 : Hami Younes A Naïve Algorithm () Basic Incremental Algorithm Problems: Comuting value is eensive, for ever : floating oint multilication floating oint aition call to rouning function cetion aroun vertical lines Gets isconnecte (strung out) for m > Also calle: Digital Differential Analzer (DDA) Base on arametric equation of line: Comute an so that one of them is an the other is less than Start from (, ) in each ste, increment b an b Set Piel (Rn(), Rn()) Set 9-Oct, CMPT-6 : Hami Younes Set 9-Oct, CMPT-6 : Hami Younes

3 Basic Incremental Algorithm () Bresenham s Mioint Algorithm voi DDA (int, int, int, int ) int length; float,,, ; if abs(-) > abs(-) length = abs(-) else length = abs(-) Kenote: At each ste along the line, there are onl two choices for the net iel to be fille in. = (-)/length; = (-)/length; = ; = ; for (int i = ; i <=length; i++) setiel(rn(), rn()) += ; += ; Creates goo lines, but still there are roblems The set of which two iels shoul be fille in eens on the slo of the line Set 9-Oct, CMPT-6 : Hami Younes Set 9-Oct, CMPT-6 : Hami Younes Bresenham s Mioint Algorithm () Bresenham s Mioint Algorithm () For a line with a slo between an, the two ossible iels that might be fille in, are the an N neighbors Let s consier < sloe < We can etermine the net iel b utting a ecision oint half-wa between the two caniate oints: What are the ossible net iels for a line with: - < slo < slo > The net iel is selecte base on which sie of the ecision oint, the true line is on, so we can efine a ecision variable (). Set 9-Oct, CMPT-6 : Hami Younes 5 Set 9-Oct, CMPT-6 : Hami Younes 6 Bresenham s Mioint Algorithm () Bresenham s Mioint Algorithm (5) + + / + / choices for net ste (base on the ecision variable that will be comute in the current ste) + + / + / = m + B = + B F(, ) =.. + B. + + choices for revious current ste iel (base on the ecision variable comute in the revious ste) In each ste of the algorithm: etermine the coorinates of current base on the ecision variable comute in revious ste comute ecision variable for net ste revious iel + + F (, ) = : [, ] is on the line F (, ) > : [, ] is below the line F (, ) < : [, ] is on to of the line ecision variable: = F ( m, m ) where [ m, m ] is the coorinates of the mioint So, How to efine ecision variable ()? e.g. the value of in current ste: +, + / ) = ( +). ( + / ).+B. Set 9-Oct, CMPT-6 : Hami Younes 7 Set 9-Oct, CMPT-6 : Hami Younes 8

4 Bresenham s Mioint Algorithm (6) Bresenham s Mioint Algorithm (7) + / ol = ( +). ( + / ).+B. + / ol = ( +). ( + / ).+B / case ) ol < : net = case ) ol > : net = N + / case ) ol < : net = case ) ol > : net = N revious iel + + case ) +, + ) = ( + ). ( + ). + B. = [( + ). + ] ( + ). + B. = + ol < net = ol revious iel + + case) > net = N +, + ) = ( + ). ( + ). + B. = [( + ). + ] [( + ). + ] + B. = + ( ) ol ol Set 9-Oct, CMPT-6 : Hami Younes 9 Set 9-Oct, CMPT-6 : Hami Younes Bresenham s Mioint Algorithm (8) Bresenham s Mioint Algorithm (9) First mioint So far, We comute an incremental function for the ecision variable. What about the ecision value? How to get rie of the ½ fraction? Solution: We onl nee the sign of, so multil b! +, + ) = ( + ). ( + ). + B. = [. + ] [. + ] + B., ) + F(, ) = = ( ) ( N ) = + ol = + ( ) ol = Oh, Noooo!!! floating oint Set 9-Oct, CMPT-6 : Hami Younes Set 9-Oct, CMPT-6 : Hami Younes Bresenham s Mioint Algorithm (Finall the coe!!!) Lines with more general sloes? voi MiointLine(int, int, int, int ) int = ; int = ; int = * // value of int = ; int = ; int inc = * ; // increment when choose int incn = * ( ); // increment when choose N ) > - ) > SetPiel (, ); while ( < ) if ( <= ) += inc ; ++; else += incn; ++; ++; SetPiel (, ); // the start iel // choose // choose N ) - > 5) - > - 6) - > - ) > 8) > - 7) - > Set 9-Oct, CMPT-6 : Hami Younes Set 9-Oct, CMPT-6 : Hami Younes

5 Lines with more general sloes? () Scan Converting Circles Solution : comute the roer ecision variable for each 8 octants: e.g. o): N an N o5): W an SW Assume center of circle is at (, ): + = R = F (, ) = + R mmm no, thanks! we have alrea ha enough trouble for that one octant! Solution : convert all octants to octant same Mioint algorithm convert to original octant in SetPiel e.g. o): Mioint (, ) SetPiel (, ) F (, ) = : [, ] is on the circle F (, ) > : [, ] is outsie the circle F (, ) < : [, ] is insie the circle What if center is not at (, )? R Set 9-Oct, CMPT-6 : Hami Younes 5 Set 9-Oct, CMPT-6 : Hami Younes 6 Scan Converting Circles () Mioint Circle Algorithm Take avantage of smmetries to minimize cases (sloes) an amount of curve rawing Onl one eighth of a circle nees to be comute! M M ol +, -½) = ( +) + ( -½) -R -< sloe < : voi CirclePoints (,, center, center) SetPiel ( + center, + center); sloe = S MS case ) ol < : net = case ) ol > : net = S SetPiel ( + center, + center); SetPiel (- + center, + center); SetPiel ( + center, - + center); SetPiel (- + center, - + center); SetPiel (- + center, - + center); SetPiel ( + center, - + center); SetPiel (- + center, + center); sloe = - Previous Piel Current Piel net Piel case) ol < net = +, ) = ( ) ( ) + + R = [( + ) + + ] + ( ) R = + + ol Set 9-Oct, CMPT-6 : Hami Younes 7 Set 9-Oct, CMPT-6 : Hami Younes 8 Mioint Circle Algorithm () Mioint Circle Algorithm () ol +, -½) = ( +) + ( -½) -R M M M M S MS case ) ol < : net = case ) ol > : net = S Previous Piel Current Piel net Piel case) +, ) = ( + ) + ( ) R = [( + ) + + ] + [( ) + ] R = ol > net = S ol First Piel Current Piel = [ + + ] + [ + ] R =, = R +, ) = ( + ) + ( ) R 5 = R Set 9-Oct, CMPT-6 : Hami Younes 9 Set 9-Oct, CMPT-6 : Hami Younes 5

6 Mioint Circle Algorithm () Mioint Circle Algorithm (5) Floating Point: to be or not to be? ( ) ( S) int ' = = ol + + = ol = R ' < < an ' > > so wh not use '?!! ' = R int int ( ) ( S) = ol = ol + + int elta int eltas elta = eltaol eltas = eltasol + elta = eltaol + S + +, eltas = eltasol + Set 9-Oct, CMPT-6 : Hami Younes Set 9-Oct, CMPT-6 : Hami Younes Mioint Circle Algorithm (6) Scan Conversion llises voi MiointCircle(int center, int center, int R) int = ; int = R; int = R // value for ecision variable int elta = ; int eltas = -*R + 5; CirclePoints (,, center, center); b + a = a b = F (, ) = b + a a b (-, ) b (, ) while ( > ) // sloe is between - an if ( < ) // Select += elta; elta += ; eltas += ; else // Select S += eltas; elta += ; eltas += ; --; ++; CirclePoints (,, center, center); // while F (, ) = : [, ] is on the ellise F (, ) > : [, ] is outsie the ellise F (, ) < : [, ] is insie the ellise (-, -) What if not centere at (, )? a (, -) Set 9-Oct, CMPT-6 : Hami Younes Set 9-Oct, CMPT-6 : Hami Younes Mioint llise Algorithm Mioint llise Algorithm () F(, ) = b + a a b Another metho to test the sloe : Graient F F Graient( F) = i + j Graient( F) = b i + a j G(F) j > G(F) i : a > b region G(F) i > G(F) j : b > a region Region G(F) j >G(F) i Region graient vector G(F) j =G(F) i Set 9-Oct, CMPT-6 : Hami Younes i 5 j graient vector G(F) i >G(F) j Region + S Region - S +, ) region + + S +, ) S +, ) region - - S +, ) S Set 9-Oct, CMPT-6 : Hami Younes 6 6

7 Mioint llise Algorithm () Rotate llises? The rest is more straightforwar: calculate as a function of ol calculate the values then we have two main loos: while a > b, scan along ++ while >, scan along -- + = K (constant) ist( P, C ) + ist( P, C ) = K C C P ( P C ) + ( P C ) + ( P C ) + ( P C ) = K F(, ) = ( P C ) + ( P C ) + ( P C ) + ( P C ) K Pleeese, sto right here!!! Set 9-Oct, CMPT-6 : Hami Younes 7 Set 9-Oct, CMPT-6 : Hami Younes 8 Wh sto? We want more! General roceure to evelo a mioint metho for an arbitrar shae: formulate the shae (arabola, sinus, ) Fille Primitives Rectangle (Bo) for ( = ; <= ; ++) for ( = ; <= ; ++) SetPiel (,, fillcolor); etermine the ecision variable etermine the scanning ath(s) so that the ecision in each ste is limite tr to formulate the equations as incremental an avoi floating oint oerations as much as ossible, or at least convert them to easier ones (mult to a, sin to mult, )? Set 9-Oct, CMPT-6 : Hami Younes 9 Set 9-Oct, CMPT-6 : Hami Younes Fille Primitives Circle (Dist) Fille Primitives Triangle voi CirclePointsFill (,, center, center) int i; for (i = +center; i <= - + center; i++) SetPiel (i,+center, fillcolor); SetPiel (i,-+center, fillcolor); for (i = +center; i <= - + center; i++) SetPiel (i,+center, fillcolor); SetPiel (i,-+center, fillcolor); The most frequentl use rimitive in D grahics! Just, Kee track of two Bresenham lines in each ste an otimization? u: ski stes when oes not change! Set 9-Oct, CMPT-6 : Hami Younes Set 9-Oct, CMPT-6 : Hami Younes 7

Computer Graphics. Computer Graphics. Lecture 3 Line & Circle Drawing

Computer 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 information

CS335 Fall 2007 Graphics and Multimedia. 2D Drawings: Lines

CS335 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 information

CS 548: COMPUTER GRAPHICS DRAWING LINES AND CIRCLES SPRING 2015 DR. MICHAEL J. REALE

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 information

Realtime 3D Computer Graphics Virtual Reality

Realtime 3D Computer Graphics Virtual Reality Realtime 3D Comuter Grahics Virtual Realit Viewing an rojection Classical an General Viewing Transformation Pieline CPU CPU Pol. Pol. DL DL Piel Piel Per Per Verte Verte Teture Teture Raster Raster Frag

More information

CSC Computer Graphics

CSC 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 information

More Raster Line Issues. Bresenham Circles. Once More: 8-Pt Symmetry. Only 1 Octant Needed. Spring 2013 CS5600

More Raster Line Issues. Bresenham Circles. Once More: 8-Pt Symmetry. Only 1 Octant Needed. Spring 2013 CS5600 Spring 03 Lecture Set 3 Bresenham Circles Intro to Computer Graphics From Rich Riesenfel Spring 03 More Raster Line Issues Fat lines with multiple pixel with Symmetric lines n point geometry how shoul

More information

Chapter 3: Graphics Output Primitives. OpenGL Line Functions. OpenGL Point Functions. Line Drawing Algorithms

Chapter 3: Graphics Output Primitives. OpenGL Line Functions. OpenGL Point Functions. Line Drawing Algorithms 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,

More information

CS5620 Intro to Computer Graphics

CS5620 Intro to Computer Graphics CS560 Reminder - Pieline Polgon at [(,9), (5,7), (8,9)] Polgon at [ ] D Model Transformations Reminder - Pieline Object Camera Cli Normalied device Screen Inut: Polgons in normalied device Model-view Projection

More information

GRAPHICS OUTPUT PRIMITIVES

GRAPHICS 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 information

Graphics Output Primitives

Graphics Output Primitives Important Graphics Output Primitives Graphics Output Primitives in 2D polgons, circles, ellipses & other curves piel arra operations in 3D triangles & other polgons Werner Purgathofer / Computergraphik

More information

Computer Graphics Inf4/MSc. Computer Graphics. Lecture 6 View Projection Taku Komura

Computer Graphics Inf4/MSc. Computer Graphics. Lecture 6 View Projection Taku Komura Computer Graphics Lecture 6 View Projection Taku Komura 1 Overview 1. View transformation 2. Rasterisation Implementation of viewing. Transform into camera coorinates. Perform projection into view volume

More information

CS 450: COMPUTER GRAPHICS RASTERIZING LINES SPRING 2016 DR. MICHAEL J. REALE

CS 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 information

Computer Graphics. Modelling in 2D. 2D primitives. Lines and Polylines. OpenGL polygon primitives. Special polygons

Computer Graphics. Modelling in 2D. 2D primitives. Lines and Polylines. OpenGL polygon primitives. Special polygons Computer Graphics Modelling in D Lecture School of EECS Queen Mar, Universit of London D primitives Digital line algorithms Digital circle algorithms Polgon filling CG - p.hao@qmul.ac.uk D primitives Line

More information

MAP. Vectors and Transforms. Reading instructions Quick Repetition of Vector Algebra. In 3D Graphics. Repetition of the Rendering Pipeline

MAP. Vectors and Transforms. Reading instructions Quick Repetition of Vector Algebra. In 3D Graphics. Repetition of the Rendering Pipeline 79 MAP Skämtbil om matte å KTHanimationskurs Vectors an Transforms In 3D Grahics Reetition of the Renering Pieline Geometr er verte: Lighting (colors) Screen sace ositions Reetition of the Renering Pieline

More information

OUTPUT PRIMITIVES. CEng 477 Introduction to Computer Graphics METU, 2007

OUTPUT 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 information

4.2 Implicit Differentiation

4.2 Implicit Differentiation 6 Chapter 4 More Derivatives 4. Implicit Differentiation What ou will learn about... Implicitl Define Functions Lenses, Tangents, an Normal Lines Derivatives of Higher Orer Rational Powers of Differentiable

More information

What is Perspective?

What is Perspective? Fall 25 M ss =M screen * M ersective * M view What is Persective? A mechanism for ortraing 3D in 2D True Persective corresons to rojection onto a lane True Persective corresons to an ieal camera image

More information

Computer Graphics. Viewing. Fundamental Types of Viewing. Perspective views. Parallel views. October 12, finite COP (center of projection)

Computer Graphics. Viewing. Fundamental Types of Viewing. Perspective views. Parallel views. October 12, finite COP (center of projection) Comuter Grahics Viewing October 2, 25 htt://www.hallm.ac.kr/~sunkim/teach/25/cga Funamental Tes of Viewing Persective views finite COP (center of rojection) Parallel views COP at infinit DOP (irection

More information

Scan Conversion. CMP 477 Computer Graphics S. A. Arekete

Scan 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 information

CS 130. Scan Conversion. Raster Graphics

CS 130. Scan Conversion. Raster Graphics CS 130 Scan Conversion Raster Graphics 2 1 Image Formation Computer graphics forms images, generally two dimensional, using processes analogous to physical imaging systems like: - Cameras - Human visual

More information

Raster Displays and Scan Conversion. Computer Graphics, CSCD18 Fall 2008 Instructor: Leonid Sigal

Raster Displays and Scan Conversion. Computer Graphics, CSCD18 Fall 2008 Instructor: Leonid Sigal Raster Displays and Scan Conversion Computer Graphics, CSCD18 Fall 28 Instructor: Leonid Sigal Rater Displays Screen is represented by 2D array of locations called piels y Rater Displays Screen is represented

More information

CS 450: COMPUTER GRAPHICS RASTERIZING CONICS SPRING 2016 DR. MICHAEL J. REALE

CS 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 information

Computer Graphics. Lecture 3 Graphics Output Primitives. Somsak Walairacht, Computer Engineering, KMITL

Computer 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 information

Cross 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,

Cross 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 information

From Ver(ces to Fragments: Rasteriza(on

From 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 information

Cross products Line segments The convex combination of two distinct points p

Cross products Line segments The convex combination of two distinct points p CHAPTER 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 information

Prof. Feng Liu. Fall /25/2018

Prof. Feng Liu. Fall /25/2018 Prof. Feng Liu Fall 08 http://www.cs.pd.edu/~fliu/courses/cs7/ 0/5/08 Last time Clipping Toda Rasterization In-class Mid-term November Close-book eam Notes on page of A or Letter size paper Where We Stand

More information

Shuigeng Zhou. May 18, 2016 School of Computer Science Fudan University

Shuigeng Zhou. May 18, 2016 School of Computer Science Fudan University Query Processing Shuigeng Zhou May 18, 2016 School of Comuter Science Fudan University Overview Outline Measures of Query Cost Selection Oeration Sorting Join Oeration Other Oerations Evaluation of Exressions

More information

To Do. Computer Graphics (Fall 2004) Course Outline. Course Outline. Motivation. Motivation

To Do. Computer Graphics (Fall 2004) Course Outline. Course Outline. Motivation. Motivation Comuter Grahics (Fall 24) COMS 416, Lecture 3: ransformations 1 htt://www.cs.columbia.edu/~cs416 o Do Start (thinking about) assignment 1 Much of information ou need is in this lecture (slides) Ask A NOW

More information

521493S Computer Graphics Exercise 3 (Chapters 6-8)

521493S 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 information

Output Primitives. Dr. S.M. Malaek. Assistant: M. Younesi

Output 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 information

Computer Graphics D Graphics Algorithms

Computer 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 information

CPSC / Scan Conversion

CPSC / Scan Conversion CPSC 599.64 / 601.64 Computer Screens: Raster Displays pixel rasters (usually) square pixels in rectangular raster evenly cover the image problem no such things such as lines, circles, etc. scan conversion

More information

Politehnica University of Timisoara Mobile Computing, Sensors Network and Embedded Systems Laboratory. Testing Techniques

Politehnica University of Timisoara Mobile Computing, Sensors Network and Embedded Systems Laboratory. Testing Techniques Politehnica University of Timisoara Mobile Computing, Sensors Network an Embee Systems Laboratory ing Techniques What is testing? ing is the process of emonstrating that errors are not present. The purpose

More information

OpenGL Graphics System. 2D Graphics Primitives. Drawing 2D Graphics Primitives. 2D Graphics Primitives. Mathematical 2D Primitives.

OpenGL 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 information

Scan Conversion- Polygons

Scan Conversion- Polygons Scan Conversion- olgons Flood Fill Algorithm Chapter 9 Scan Conversion (part ) Drawing olgons on Raster Displa Input polgon with rasterized edges = (x,) point inside Goal: Fill interior with specified

More information

Realtime 3D Computer Graphics Virtual Reality

Realtime 3D Computer Graphics Virtual Reality Realtime 3D Computer Graphics Virtual Reality From Vertices to Fragments Overview Overall goal recapitulation: Input: World description, e.g., set of vertices and states for objects, attributes, camera,

More information

1 Introduction to Graphics

1 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 information

Implicit and Explicit Functions

Implicit and Explicit Functions 60_005.q //0 :5 PM Page SECTION.5 Implicit Differentiation Section.5 EXPLORATION Graphing an Implicit Equation How coul ou use a graphing utilit to sketch the graph of the equation? Here are two possible

More information

Computer Graphics D Graphics Algorithms

Computer 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 information

Dr Pavan Chakraborty IIIT-Allahabad

Dr 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 information

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

CS452/552; EE465/505. Clipping & Scan Conversion CS452/552; EE465/505 Clipping & Scan Conversion 3-31 15 Outline! From Geometry to Pixels: Overview Clipping (continued) Scan conversion Read: Angel, Chapter 8, 8.1-8.9 Project#1 due: this week Lab4 due:

More information

Simple example. Analysis of programs with pointers. Points-to relation. Program model. Points-to graph. Ordering on points-to relation

Simple example. Analysis of programs with pointers. Points-to relation. Program model. Points-to graph. Ordering on points-to relation Simle eamle Analsis of rograms with ointers := 5 tr := @ *tr := 9 := rogram S1 S2 S3 S4 deendences What are the deendences in this rogram? Problem: just looking at variable names will not give ou the correct

More information

Topics. From vertices to fragments

Topics. From vertices to fragments Topics From vertices to fragments From Vertices to Fragments Assign a color to every pixel Pass every object through the system Required tasks: Modeling Geometric processing Rasterization Fragment processing

More information

Lecture 8: Orthogonal Range Searching

Lecture 8: Orthogonal Range Searching CPS234 Comutational Geometry Setember 22nd, 2005 Lecture 8: Orthogonal Range Searching Lecturer: Pankaj K. Agarwal Scribe: Mason F. Matthews 8.1 Range Searching The general roblem of range searching is

More information

CS 450: COMPUTER GRAPHICS 2D TRANSFORMATIONS SPRING 2016 DR. MICHAEL J. REALE

CS 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 information

Try It. Implicit and Explicit Functions. Video. Exploration A. Differentiating with Respect to x

Try It. Implicit and Explicit Functions. Video. Exploration A. Differentiating with Respect to x SECTION 5 Implicit Differentiation Section 5 Implicit Differentiation Distinguish between functions written in implicit form an eplicit form Use implicit ifferentiation to fin the erivative of a function

More information

Image Formation. 2. Camera Geometry. Focal Length, Field Of View. Pinhole Camera Model. Computer Vision. Zoltan Kato

Image Formation. 2. Camera Geometry. Focal Length, Field Of View. Pinhole Camera Model. Computer Vision. Zoltan Kato Image Formation 2. amera Geometr omuter Vision oltan Kato htt://www.in.u-seged.hu/~kato seged.hu/~kato/ 3D Scene Surace Light (Energ) Source inhole Lens Imaging lane World Otics Sensor Signal amera: Sec

More information

From Vertices to Fragments: Rasterization. Reading Assignment: Chapter 7. Special memory where pixel colors are stored.

From 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 information

Department of Computer Sciences Graphics Fall 2003 (Lecture 2) Pixels

Department of Computer Sciences Graphics Fall 2003 (Lecture 2) Pixels Pixels Pixel: Intensity or color sample. Raster Image: Rectangular grid of pixels. Rasterization: Conversion of a primitive s geometric representation into A set of pixels. An intensity or color for each

More information

Fitting Spheres to Range Data from 3D Imaging Systems

Fitting Spheres to Range Data from 3D Imaging Systems > PLAC THIS LI WITH OU PAP IDTIFICATIO UMB (DOUBL-CLICK H TO DIT) < Fitting Sheres to ange Data from 3D Imaging Systems Marek Franaszek Geraline S. Cheok Kamel S. Saii an Christoh Witzgall 3 Abstract Two

More information

Convex Hulls. Helen Cameron. Helen Cameron Convex Hulls 1/101

Convex 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 information

Lecture 3: Geometric Algorithms(Convex sets, Divide & Conquer Algo.)

Lecture 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 information

Output Primitives Lecture: 4. Lecture 4

Output 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 information

Computer Graphics : Bresenham Line Drawing Algorithm, Circle Drawing & Polygon Filling

Computer 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 information

Computer Graphics. Bing-Yu Chen National Taiwan University The University of Tokyo

Computer Graphics. Bing-Yu Chen National Taiwan University The University of Tokyo Computer Graphic Bing-Yu Chen National Taiwan Univerit The Univerit of Toko Geometrical Tranformation Mathematical reliminarie 2D Tranformation Homogeneou Coorinate & Matri Repreentation 3D Tranformation

More information

Animação e Visualização Tridimensional. Collision Detection Corpo docente de AVT / CG&M / DEI / IST / UTL

Animação e Visualização Tridimensional. Collision Detection Corpo docente de AVT / CG&M / DEI / IST / UTL Animação e Visualização Triimensional Collision Detection Collision Hanling Collision Detection Collision Determination Collision Response Collision Hanling Collision Detection Collision Determination

More information

Tópicos de Computação Gráfica Topics in Computer Graphics 10509: Doutoramento em Engenharia Informática. Chap. 2 Rasterization.

Tópicos de Computação Gráfica Topics in Computer Graphics 10509: Doutoramento em Engenharia Informática. Chap. 2 Rasterization. Tópicos de Computação Gráfica Topics in Computer Graphics 10509: Doutoramento em Engenharia Informática Chap. 2 Rasterization Rasterization Outline : Raster display technology. Basic concepts: pixel, resolution,

More information

Math 131. Implicit Differentiation Larson Section 2.5

Math 131. Implicit Differentiation Larson Section 2.5 Math 131. Implicit Differentiation Larson Section.5 So far we have ealt with ifferentiating explicitly efine functions, that is, we are given the expression efining the function, such as f(x) = 5 x. However,

More information

Chapter 8: Implementation- Clipping and Rasterization

Chapter 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 information

Dual Arm Robot Research Report

Dual Arm Robot Research Report Dual Arm Robot Research Report Analytical Inverse Kinematics Solution for Moularize Dual-Arm Robot With offset at shouler an wrist Motivation an Abstract Generally, an inustrial manipulator such as PUMA

More information

CS 428: Fall Introduction to. Geometric Transformations. Andrew Nealen, Rutgers, /15/2010 1

CS 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 information

Clipping. Administrative. Assignment 1 Gallery. Questions about previous lectures? Overview of graphics pipeline? Assignment 2

Clipping. Administrative. Assignment 1 Gallery. Questions about previous lectures? Overview of graphics pipeline? Assignment 2 Cliing MIT EECS 6.837 Frédo Durand and Seth Teller Some slides and images courtesy of Leonard McMillan MIT EECS 6.837, Teller and Durand 1 MIT EECS 6.837, Teller and Durand 2 Administrative Assignment

More information

TD C. Space filling designs in R

TD C. Space filling designs in R TD C Sace filling designs in R 8/05/0 Tyical engineering ractice : One-At-a-Time (OAT design X P P3 P X Main remarks : OAT brings some information, but otentially wrong Eloration is oor : on monotonicity?

More information

0607 CAMBRIDGE INTERNATIONAL MATHEMATICS

0607 CAMBRIDGE INTERNATIONAL MATHEMATICS CAMBRIDGE INTERNATIONAL EXAMINATIONS International General Certificate of Seconary Eucation MARK SCHEME for the May/June 03 series 0607 CAMBRIDGE INTERNATIONAL MATHEMATICS 0607/4 Paper 4 (Extene), maximum

More information

Curve Reconstruction taken from [1]

Curve Reconstruction taken from [1] Notes by Tamal K. Dey, OSU 47 Curve Reconstruction taken from [1] The simlest class of manifolds that ose nontrivial reconstruction roblems are curves in the lane. We will describe two algorithms for curve

More information

Pointers CMPE-013/L. Pointers. Pointers What do they do? Pointers What are pointers? Gabriel Hugh Elkaim Winter 2014

Pointers CMPE-013/L. Pointers. Pointers What do they do? Pointers What are pointers? Gabriel Hugh Elkaim Winter 2014 CMPE-013/L A Variable's versus A Variable's Value In some situations, we will want to work with a variable's address in memor, rather than the value it contains Gabriel Hugh Elkaim Winter 2014 Variable

More information

0607 CAMBRIDGE INTERNATIONAL MATHEMATICS

0607 CAMBRIDGE INTERNATIONAL MATHEMATICS PAPA CAMBRIDGE CAMBRIDGE INTERNATIONAL EXAMINATIONS International General Certificate of Seconary Eucation MARK SCHEME for the May/June 0 series CAMBRIDGE INTERNATIONAL MATHEMATICS /4 4 (Extene), maximum

More information

3D ENVIRONMENT MODELING AND MONITORING USING KINECTS FOR VIDEO SURVEILLANCE 1

3D ENVIRONMENT MODELING AND MONITORING USING KINECTS FOR VIDEO SURVEILLANCE 1 D ENVIRONMENT MODELING AND MONITORING USING KINECTS FOR VIDEO SURVEILLANCE 1 Bing-Chen Ma ( 馬秉辰 ) Institute o Comuter Science an Engineering National Chiao Tung University, Hsinchu, Taiwan Email: t110.cs01g@nctu.eu.tw

More information

Line Drawing Week 6, Lecture 9

Line Drawing Week 6, Lecture 9 CS 536 Computer Graphics Line Drawing Week 6, Lecture 9 David Breen, William Regli and axim Peysakhov Department of Computer Science Drexel University Outline Line drawing Digital differential analyzer

More information

Computer Graphics. - Rasterization - Philipp Slusallek

Computer Graphics. - Rasterization - Philipp Slusallek Computer Graphics - Rasterization - Philipp Slusallek Rasterization Definition Given some geometry (point, 2D line, circle, triangle, polygon, ), specify which pixels of a raster display each primitive

More information

NEW METHOD FOR FINDING A REFERENCE POINT IN FINGERPRINT IMAGES WITH THE USE OF THE IPAN99 ALGORITHM 1. INTRODUCTION 2.

NEW METHOD FOR FINDING A REFERENCE POINT IN FINGERPRINT IMAGES WITH THE USE OF THE IPAN99 ALGORITHM 1. INTRODUCTION 2. JOURNAL OF MEDICAL INFORMATICS & TECHNOLOGIES Vol. 13/009, ISSN 164-6037 Krzysztof WRÓBEL, Rafał DOROZ * fingerprint, reference point, IPAN99 NEW METHOD FOR FINDING A REFERENCE POINT IN FINGERPRINT IMAGES

More information

STEREOSCOPIC ROBOT VISION SYSTEM

STEREOSCOPIC ROBOT VISION SYSTEM Palinko Oskar, ipl. eng. Facult of Technical Sciences, Department of Inustrial Sstems Engineering an Management, 21 000 Novi Sa, Dositej Obraovic Square 6, Serbia & Montenegro STEREOSCOPIC ROBOT VISION

More information

Modeling Transformations

Modeling Transformations Modeling Transformations Michael Kazhdan (601.457/657) HB Ch. 5 FvDFH Ch. 5 Announcement Assignment 2 has been posted: Due: 10/24 ASAP: Download the code and make sure it compiles» On windows: just build

More information

A New Line Drawing Algorithm Based on Sample Rate Conversion

A New Line Drawing Algorithm Based on Sample Rate Conversion A New Line Drawing Algorithm Based on Sample Rate Conversion c 2002, C. Bond. All rights reserved. February 5, 2002 1 Overview In this paper, a new method for drawing straight lines suitable for use on

More information

Clipping and Scan Conversion

Clipping 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 information

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

0. Introduction: What is Computer Graphics? 1. Basics of scan conversion (line drawing) 2. Representing 2D curves CSC 418/2504: Computer Graphics Course web site (includes course information sheet): http://www.dgp.toronto.edu/~elf Instructor: Eugene Fiume Office: BA 5266 Phone: 416 978 5472 (not a reliable way) Email:

More information

Chapter - 2: Geometry and Line Generations

Chapter - 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 information

Computer Graphics Chapter 7 Three-Dimensional Viewing Viewing

Computer Graphics Chapter 7 Three-Dimensional Viewing Viewing Computer Graphics Chapter 7 Three-Dimensional Viewing Outline Overview of Three-Dimensional Viewing Concepts The Three-Dimensional Viewing Pipeline Three-Dimensional Viewing-Coorinate Parameters Transformation

More information

Exercises of PIV. incomplete draft, version 0.0. October 2009

Exercises of PIV. incomplete draft, version 0.0. October 2009 Exercises of PIV incomplete raft, version 0.0 October 2009 1 Images Images are signals efine in 2D or 3D omains. They can be vector value (e.g., color images), real (monocromatic images), complex or binary

More information

Two Dimensional Viewing

Two Dimensional Viewing Two Dimensional Viewing Dr. S.M. Malaek Assistant: M. Younesi Two Dimensional Viewing Basic Interactive Programming Basic Interactive Programming User controls contents, structure, and appearance of objects

More information

Scan Conversion. Drawing Lines Drawing Circles

Scan 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 information

Solutions to Tutorial 1 (Week 8)

Solutions to Tutorial 1 (Week 8) The University of Syney School of Mathematics an Statistics Solutions to Tutorial 1 (Week 8) MATH2069/2969: Discrete Mathematics an Graph Theory Semester 1, 2018 1. In each part, etermine whether the two

More information

Remember: The equation of projection. Imaging Geometry 1. Basic Geometric Coordinate Transforms. C306 Martin Jagersand

Remember: The equation of projection. Imaging Geometry 1. Basic Geometric Coordinate Transforms. C306 Martin Jagersand Imaging Geometr 1. Basic Geometric Coordinate Transorms emember: The equation o rojection Cartesian coordinates: (,, z) ( z, z ) C36 Martin Jagersand How do we develo a consistent mathematical ramework

More information

Output Primitives Lecture: 3. Lecture 3. Output Primitives. Assuming we have a raster display, a picture is completely specified by:

Output 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 information

Preamble. Singly linked lists. Collaboration policy and academic integrity. Getting help

Preamble. Singly linked lists. Collaboration policy and academic integrity. Getting help CS2110 Spring 2016 Assignment A. Linke Lists Due on the CMS by: See the CMS 1 Preamble Linke Lists This assignment begins our iscussions of structures. In this assignment, you will implement a structure

More information

CSCI 4620/8626. Coordinate Reference Frames

CSCI 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 information

Graphics (Output) Primitives. Chapters 3 & 4

Graphics (Output) Primitives. Chapters 3 & 4 Graphics (Output) Primitives Chapters 3 & 4 Graphic Output and Input Pipeline Scan conversion converts primitives such as lines, circles, etc. into pixel values geometric description a finite scene area

More information

New Geometric Interpretation and Analytic Solution for Quadrilateral Reconstruction

New Geometric Interpretation and Analytic Solution for Quadrilateral Reconstruction New Geometric Interpretation an Analytic Solution for uarilateral Reconstruction Joo-Haeng Lee Convergence Technology Research Lab ETRI Daejeon, 305 777, KOREA Abstract A new geometric framework, calle

More information

COT5405: GEOMETRIC ALGORITHMS

COT5405: 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 information

PAL Based Localization Using Pyramidal Lucas-Kanade Feature Tracker

PAL Based Localization Using Pyramidal Lucas-Kanade Feature Tracker PA Base ocalization Usin Pramial ucas-kanae Feature Tracer Zoltán Vámoss Áos Tóth Péter Hirschber Buaest Tech John von Neumann Facult of nformatics nstitute of Alie nformatics Buaest. Naszombat u.19. Phone:

More information

Scan Converting Circles

Scan Converting Circles Scan Conversion Algorithms CS 460 Computer Graphics Professor Richard Eckert Circles Ellipses and Other 2-D Curves Text February 16, 2004 Scan Converting Circles Given: Center: (h,k) Radius: r Equation:

More information

Solution Notes. COMP 151: Terms Test

Solution Notes. COMP 151: Terms Test Family Name:.............................. Other Names:............................. ID Number:............................... Signature.................................. Solution Notes COMP 151: Terms

More information

EF432. Introduction to spagetti and meatballs

EF432. Introduction to spagetti and meatballs EF432 Introduction to spagetti and meatballs CSC 418/2504: Computer Graphics Course web site (includes course information sheet): http://www.dgp.toronto.edu/~karan/courses/418/fall2015 Instructor: Karan

More information

Announcements. 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. 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 information

CS 1110 Final, December 7th, 2017

CS 1110 Final, December 7th, 2017 CS 1110 Final, December 7th, 2017 This 150-minute exam has 8 questions worth a total of 100 oints. Scan the whole test before starting. Budget your time wisely. Use the back of the ages if you need more

More information

2D rendering takes a photo of the 2D scene with a virtual camera that selects an axis aligned rectangle from the scene. The photograph is placed into

2D rendering takes a photo of the 2D scene with a virtual camera that selects an axis aligned rectangle from the scene. The photograph is placed into 2D rendering takes a photo of the 2D scene with a virtual camera that selects an axis aligned rectangle from the scene. The photograph is placed into the viewport of the current application window. A pixel

More information

Physically Based Rendering ( ) Intersection Acceleration

Physically Based Rendering ( ) Intersection Acceleration Physically ased Rendering (600.657) Intersection cceleration Intersection Testing ccelerated techniques try to leverage: Grouing: To efficiently discard grous of rimitives that are guaranteed to be missed

More information

Modeling Transformations

Modeling Transformations Modeling Transformations Michael Kazhdan (601.457/657) HB Ch. 5 FvDFH Ch. 5 Overview Ra-Tracing so far Modeling transformations Ra Tracing Image RaTrace(Camera camera, Scene scene, int width, int heigh,

More information

Gabriel Hugh Elkaim Spring CMPE 013/L: C Programming. CMPE 013/L: C Programming

Gabriel Hugh Elkaim Spring CMPE 013/L: C Programming. CMPE 013/L: C Programming 1 CMPE 013/L Gabriel Hugh Elkaim Sring 2013 2 A Variable's versus A Variable's Value In some situations, we will want to work with a variable's address in memor, rather than the value it contains Variable

More information