A Procedure to Clip Line Segment

Size: px
Start display at page:

Download "A Procedure to Clip Line Segment"

Transcription

1 Vol.5, No.1 (2014), pp A Procedure to Clip Line Segment Bimal Kumar Ray School of Information Technology & Engineering VIT University, Vellore , India bimalkumarray@vit.ac.in, raybk_2000@yahoo.com Abstract This paper proposes a procedure to clip a line segment in 2D that does not compute false intersection point and is easy to implement. The procedure is compared with the classical algorithms viz. Cohen-Sutherland, Liang-Barsky and Nicholl-Lee-Nicholl. It is found that the number of comparisons required by the procedure is significantly less than that required by the Cohen-Sutherland and Liang-Barsky algorithm and this observation is supported by actual execution time. It is also found that the implementation of the procedure is easier than that of the Nicholl-Lee-Nicholl algorithm. The procedure requires two calls to a single routine. Since the second call does not need the results of the first call, hence the two calls can be made in parallel improving the performance by two-fold. Keywords: clipping, line segment, output-driven, comparison, execution time 1. Introduction Clipping a line segment against a rectangular window is a common operation, useful in many algorithms and graphics applications. There are three classical algorithms for line segment clipping viz. Cohen-Sutherland [1], Liang-Barsky [2] and Nicholl-Lee-Nicholl [3]. The Cohen-Sutherland (CS) algorithm detects line segments that are completely inside the window and removes those that are completely outside the window. The other line segments are repeatedly tested and point of intersection of the line segment with the window boundaries is found until the inside test is satisfied. The source of inefficiency of the algorithm is the repeated computation of out code and this is why the CS algorithm requires a large number of comparisons. It also computes false intersection points - up to a maximum of four. The Liang- Barsky (LB) algorithm can clip a line as well as a line segment using a parametric representation of its equation. It computes point of intersection of a line with each of the boundaries of a clipping window. A trivial rejection test is used to reject lines that do not intersect the window. Except the trivial rejection test, the LB algorithm always finds the point of intersection of a line segment (line) with all the clipping boundaries irrespective of its actual intersection and computes up to a maximum of four false intersection points and but unlike the CS algorithm, it does not compute out code. The Nicholl-Lee-Nicholl (NLN) algorithm considers position of one of the end points of a line segment with respect to a clipping boundary and computes point of intersection after confirming that the line segment actually intersects the clipping window. Since it follows test & intersect approach instead of intersect & test, hence it does not compute false intersection points and thereby requires ISSN: IJCG Copyright c 2014 SERSC

2 exactly as many divisions as the number of actual intersection points. It is found that the procedure requires the least number of arithmetic operations as compared to the CS and the LB algorithm and is known to be theoretically optimal. But, it requires a large number of routines to develop, test and validate making its implementation harder than that of the CS and LB algorithm. The procedure proposed, in this paper, clips a line segment against a rectangular window. It does not compute out code, does not compute false intersection points and requires at the most two calls to a single routine that computes point of intersection of a line segment with one of the boundaries of the clipping window after testing if it actually intersects the window. Each call to the routine considers one of the end points of the line segment and tests the same against window boundaries. Since it tests one of the end points of a line segment with one call to the routine, hence the second call requires the end points of the line segment to be swapped before the routine is called. The two calls may also be executed in parallel, because one call does not need the results of the other for its execution. The paper is organized as follows. In the next section, the concept and implementation of the proposed procedure is presented, in Section 3, the procedure is analyzed and compared with the classical algorithms and finally, in Section 4, the conclusion is drawn. 2. Proposed procedure Concept & implementation Consider a rectangular clipping window with its left boundary defined by x = x L, right boundary by x = x R, bottom boundary by y = y B and top boundary by y = y T. Let a line segment to be clipped be defined by its end points A(x 1, y 1 ) and B(x 2, y 2 ) and let CD with the end points C(x L, y B ) and D(x L, y T ) be the left boundary segment of the clipping window (Figure 1). Let us assume that the left end point A of the line segment AB lies to the left of the left boundary segment (CD) and the other end point B lies to the right of the left boundary segment. It may be observed from this figure that both the end points C and D of the left boundary segment CD are below the line segment AB and this is why AB cannot intersect CD. In other words, the line segment AB cannot intersect CD if the point C is below the segment AB. Similarly, the segment AB cannot intersect (Figure 2) CD, if D lies above AB. In case AB is neither above nor below both the corner points C and D (Figure 3), the point of intersection of AB with CD is computed. Figure 1. The corner point C is below the segment AB and so AB is rejected 10 Copyright c 2014 SERSC

3 Figure 2. A corner point D is above the line segment AB and so it is rejected Figure 3. A line segment AB intersects CD and so it cannot be rejected Figure 4. A line segment with end point A to the right of the right boundary segment and the other end point is to its left If the end point A of the line segment is situated to the right of the right boundary segment (EF in figure 4) and the end point B is situated to the left of the right boundary segment and if both the upper right corner and lower right corner of the clipping window fall either below or above the segment AB then the segment AB is rejected, otherwise it is necessary to find the point of intersection of the line segment AB with the right boundary segment EF. Similar approach is followed if one of the end points of the line segment AB is either below the bottom boundary or above the top boundary segment. A line segment that lies completely either to the left of the left boundary or to the right of the right boundary or below the bottom boundary or above the top boundary, is rejected by a Copyright c 2014 SERSC 11

4 trivial test. A line segment with both its end points lying inside the clipping window survives rejection tests and is eventually accepted. The procedure is output directed it computes exactly as many intersection points as required for the output line segment and thereby it avoids computing false intersection points. The CS algorithm, on the other hand, computes a maximum of four false intersections and so also the LB algorithm. Though the NLN algorithm does not compute false intersection points, but it requires too many routines to develop, test and validate making its implementation hard to achieve. The mathematical predicates to be used to determine whether a line segment intersects window boundary segment are derived now. The equation of a line segment AB with the end points A(x 1, y 1 ) and B(x 2, y 2 ), in the implicit form, is defined by (x x 1 )(y 2 y 1 ) (y y 1 )(x 2 x 1 ) = 0, (x, y) being the coordinates of any point on the line segment. To test if a point C (figure 1), with coordinates (x L, y T ), is below the line segment AB, the predicate to be used is P 1 : (x L x 1 )(y 2 y 1 ) > (y T y 1 )(x 2 x 1 ). Similarly, referring to figure 2, the predicate to be used to test whether the point D, with coordinates (x L, y B ), is above the line segment is P 2 : (x L x 1 )(y 2 y 1 ) < (y B y 1 )(x 2 x 1 ). If one of the predicates P 1 or P 2 evaluate to true then the line segment AB is rejected, otherwise it intersects the boundary segment CD (figure 3) and in this case the x-coordinate of the point of intersection is x L and the y-coordinate is given by y = y 1 + (y 2 y 1 )(x L x 1 )/(x 2 x 1 ). In the last expression, though x 2 x 1 is in the denominator but division by zero is not encountered because the line segment that intersects the left boundary cannot be parallel to the same (x 1 x 2 ). It may be noted that point of intersection is computed after confirming that it actually exists and thereby computation of false intersection points is avoided. If one of the end points of a line segment to be clipped is situated to the right of the right boundary and the other end point is situated to the left of the right boundary (figure 4) then a similar test is performed to test whether the line segment can be rejected. Similar tests are performed against the bottom and top boundary too. In case it is found that an end point of the line segment is neither to the left of the left boundary, nor to the right of the right boundary nor below the bottom boundary nor above the top boundary then it is returned as one of the end points of the output line segment. The procedure is implemented as a function in C programming language, is called cliponeend and is displayed below. int cliponeend(double& x1, double& y1, double x2, double y2, int& display) { if (x1 < xl) { double dx = x2 x1, dy = y2 y1, temp = (xl x1)*dy; if ( (yt y1)*dx < temp ) else if ( (yb y1)*dx > temp ) 12 Copyright c 2014 SERSC

5 else { y1 = y1 + temp/dx; x1 = xl; display = 1; else if (x1 > xr) { double dx = x2 x1, dy = y2 y1, temp = (xr x1)*dy; if ( (yt y1)*dx > temp ) else if ( (yb y1)*dx < temp) else { y1 = y1 + temp/dx; x1 = xr; display = 1; else display = 1; if( y1 < yb ) { double dx = x2 x1, dy = y2 y1, temp = (yb y1)*dx; if ( temp < (xl x1)*dy ) else if ( temp > (xr x1)*dy ) else { x1 = x1 + temp/dy; y1 = yb; display = 1; else if ( y1 > yt ) { double dx = x2 x1, dy = y2 y1, temp = (yt y1)*dx; if ( temp > (xl x1)*dy ) else if ( temp < (xr x1)*dy ) else { x1 = x1 + temp/dy; y1 = yt; display = 1; else display = 1; return display; The procedure is used to test one of the end points of a line segment against a clipping boundary segment. It accepts the coordinates (x 1, y 1 ) and (x 2, y 2 ) of the end points of the line Copyright c 2014 SERSC 13

6 segment to be clipped as input parameters and treats one of the end points (x 1, y 1 ) (say) as output parameters as well. The identifier display, used in the procedure, stores the value 1 if either the point of intersection of the line segment with the clipping boundary segment is found or the point (x 1, y 1 ) lies inside the clipping window, otherwise it stores the value zero. A higher level routine called cliplinesegment, displayed below, initially performs a trivial rejection test. If the test succeeds then the procedure returns nothing without performing any computation. On the other hand, if the trivial rejection test fails then the routine cliponeend is called at the most twice. If the first call returns zero then the second call is not made. The second call, if performed, is made after swapping the role of the end points, because the routine tests one end point at a time. The procedure accepts the coordinates of end points of the line segment as its arguments and the same act as output parameters as well. void cliplinesegment(double x1, double y1, double x2, double y2, int& display) { // A trivial rejection test if (x1 < xl) if (x2 < xl) return; if (x1 > xr) if (x2 > xr) return; if (y1 < yb) if (y2 < yb) return; if (y1 > yt) if (y2 > yt) return; // Trivial rejection test ends if(!(cliponeend(x1, y1, x2, y2, display)) return; if (cliponeend(x2, y2, x1, y1, display) ) line (x1, y1, x2, y2); //draw line segment with (x1, y1) and (x2. y2) as its end points return; 3. Analysis & comparison An architecture-independent analysis of the proposed procedure is made and compared with the CS, LB and NLN algorithm. For this, test line segments at all possible positions are considered and the number of comparisons (<), addition (+), subtraction ( ), multiplication ( ) and division ( ) required to clip a line segment are computed (it is possible to consider line segments at all possible positions because of the symmetry of the problem.). The CS, LB and the NLN algorithm also are applied on these line segments. The CS and LB algorithms are coded from [1] and the NLN is from [3]. The operations performed on different line segments by the three algorithms are shown in the Table 1 which also shows the coordinates of the end points of the test line segments. From these results it is observed that the maximum number of false intersection points computed by the CS and LB algorithm is four but the proposed procedure, like the NLN, does not compute false intersection points. This is why the number of divisions performed by the proposed procedure is exactly the same as the number of intersection points of the clipped line segment. It is also observed that the average number of comparisons required by the CS and the LB algorithm are respectively 169% and 137% of the proposed procedure and so it is concluded that the average number of comparisons required by the proposed procedure is less than that required by the CS and LB algorithm. 14 Copyright c 2014 SERSC

7 Table 1. Comparison among proposed, CS, LB and NLN algorithm with respect to operation counts The CS and LB algorithms are not output directed. These algorithms compute false intersection points up to a maximum of four. On the other hand, the proposed procedure is output directed. It does not compute false intersection points. The proposed procedure is easier to implement than the NLN algorithm. As it is well known [4], implementation of the NLN algorithm requires multiple routines to be developed: one each for (x 1, y 1 ) in each of the corners and edges of the clipping region and also for the other point (x 2, y 2 ) exterior or interior of the clipping region. Obviously, there are a large number of routines and the resulting algorithms are quite complex. Consequently, development, testing, and validation are of considerable concern. The proposed procedure does not require two many cases to develop, test and validate. Only one routine can process line segments at all possible positions with Copyright c 2014 SERSC 15

8 two calls to the routine. A higher level routine, called cliplinesegment, is used to deal with the trivial rejection test which, in turn, calls the lower level routine, cliponeend. Lastly, the average execution time of five million random line segments is computed fifty times on a PC with Intel Core i3 CPU GHz processor using the proposed as well as conventional algorithms. The results of these experiments are shown in table II. A metric E = (Time to clip by other algorithm) / (Time to clip by the proposed algorithm), called coefficient of efficiency [5], is used to compare the performance of the proposed algorithm with the CS, LB and NLN algorithm and its values are shown in the same table. It is found that the performance of the proposed algorithm is better than the CS and the LB algorithm with respect to execution time. Table 2. Average execution time of five million random line segments & its ratio Proposed CS LB NLN CS/Proposed LB/Proposed NLN/Proposed 2.75E- 1.11E E E E E E E- 2.64E- 2.64E- 1.50E E E E- 1.65E E E E- 1.31E E E E- 1.47E E E E E E E E E E- 9.44E E E E- 1.47E E E E- 2.64E- 1.16E E E E- 1.31E E E E- 9.44E E E E E E E- 2.75E- 2.75E- 1.92E E E E E E Copyright c 2014 SERSC

9 1.43E- 2.42E- 2.42E- 2.42E- 1.43E- 2.64E- 1.76E- 1.76E- 1.76E- 2.86E- 2.64E- 1.76E- 2.75E- 2.42E- 2.42E- 2.97E- 2.86E- 2.42E- 2.75E- 2.86E- 2.75E- 2.42E- 2.86E- 2.86E- 2.64E- 2.97E- 3.19E- 1.77E E E E E E E E E E E E E E E E E E E E E E E E E E E E E E E E E E E E E E E E E E E E E E E E E E E E E E E E E E E+00 1.E E E E E E E E E E E E E-01 Copyright c 2014 SERSC 17

10 1.76E- 1.76E- 2.42E- 2.97E- 2.97E- 1.76E- 3.08E- 1.43E E E E- 1.00E E E E E E E E E E- 1.25E E E E- 1.31E E E E E E E E+00 1.E E E E E E E-01 Average 1.32E E E+00 Maximum 2.00E E E+00 Minimum 8.64E E E-01 It is observed that the higher level routine cliplinesegment calls the lower level routine cliponeend twice, the second call being made after interchanging the role of the end points of the line segment. The second call does not require the results of the first call as (a part of) its input and so the two calls to the routine cliponeend can be made in parallel and thereby improving the performance of the algorithm two-fold. 4. Conclusion A procedure to clip a line segment against a rectangular window is proposed and tested with line segments at all possible positions and compared with the classical line segment clipping algorithms. The procedure is also tested and compared with the conventional algorithms using actual execution time on random lines. The following features are observed of the proposed procedure. It, as with the NLN algorithm, does not compute false intersection point and so it is output driven. It shows improvement over the CS and LB algorithm with respect to number of comparisons and number of divisions. It is much simpler that the NLN algorithm in that it does not require too many routines to develop, test and validate. The performance of the proposed procedure is found to be better than the CS and the LB algorithm with respect to actual execution time. 18 Copyright c 2014 SERSC

11 It is possible to improve its performance two-fold by executing the two calls to the routine cliponeend in parallel. References [1] J. D. Foley, A. van Dam, S. K. Feiner and J. F. Hughes, Computer Graphics: Principles and Practice, Addison-Wesley (2 nd edition in C), (1996). [2] Y. D. Liang and B. A. Barsky, A New Conceptand Method for Line Clipping, ACM Transactions on Graphics, vol. 3, no. 1, (1984), pp [3] T. M. Nicholl, D. T. Lee and R. A. Nicholl, An Efficient New Algorithm for 2-D Line Clipping, Computers & Graphics, vol. 21, no. 4, (1987), pp [4] D. F. Rogers, Procedural Elements for Computer Graphics, 2 nd edition Tata McGraw-Hill, (2005). [5] D. H. Bui and V. Skala, Fast algorithms for clipping lines and line segments in E2, The Visual Computer vol. 14, (1998), pp Author Bimal Kumar Ray received his Ph.D. degree in Computer Science from Indian Statistical Institute, Kolkata, India. He received his Master degree in Applied Mathematics from Calcutta University and his Bachelor degree in Mathematics from St. Xavier's College, Kolkata. His research interests are in computer graphics, vision and image processing. bimalkumarray@vit.ac.in Copyright c 2014 SERSC 19

12 20 Copyright c 2014 SERSC

Fast Algorithms for Line Segment and Line Clipping in E 2

Fast Algorithms for Line Segment and Line Clipping in E 2 Fast Algorithms for Line Segment and Line Clipping in E 2 Duc Huy Bui, Václav Skala Department of Informatics and Computer Science 1 University of West Bohemia Univerzitní 22, Box 314 306 14 Plzen Czech

More information

Keywords Computer Graphics, Line Clipping, 2D geometry, 3D geometry.

Keywords Computer Graphics, Line Clipping, 2D geometry, 3D geometry. Volume 6, Issue 11, November 2016 ISSN: 2277 128X International Journal of Advanced Research in Computer Science and Software Engineering Research Paper Available online at: www.ijarcsse.com RJ - ASHI

More information

A New Algorithm for Pyramidal Clipping of Line Segments in E 3

A New Algorithm for Pyramidal Clipping of Line Segments in E 3 A New Algorithm for Pyramidal Clipping of Line Segments in E 3 Vaclav Skala 1, Duc Huy Bui Department of Informatics and Computer Science 2 University of West Bohemia Univerzitni 22, Box 314 306 14 Plzen

More information

CSCI 4620/8626. Computer Graphics Clipping Algorithms (Chapter 8-5 )

CSCI 4620/8626. Computer Graphics Clipping Algorithms (Chapter 8-5 ) CSCI 4620/8626 Computer Graphics Clipping Algorithms (Chapter 8-5 ) Last update: 2016-03-15 Clipping Algorithms A clipping algorithm is any procedure that eliminates those portions of a picture outside

More information

Computer Graphics. The Two-Dimensional Viewing. Somsak Walairacht, Computer Engineering, KMITL

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

Clipping Lines. Dr. Scott Schaefer

Clipping Lines. Dr. Scott Schaefer Clipping Lines Dr. Scott Schaefer Why Clip? We do not want to waste time drawing objects that are outside of viewing window (or clipping window) 2/94 Clipping Points Given a point (x, y) and clipping window

More information

Clipping Points Consider a clip window which is rectangular in shape. P(x, y) is a point to be displayed.

Clipping Points Consider a clip window which is rectangular in shape. P(x, y) is a point to be displayed. Usually only a specified region of a picture needs to be displayed. This region is called the clip window. An algorithm which displays only those primitives (or part of the primitives) which lie inside

More information

From Vertices To Fragments-1

From Vertices To Fragments-1 From Vertices To Fragments-1 1 Objectives Clipping Line-segment clipping polygon clipping 2 Overview At end of the geometric pipeline, vertices have been assembled into primitives Must clip out primitives

More information

Graphics System. Processor. Output Display. Input Devices. Frame Buffer. Memory. Array of pixels. Resolution: # of pixels Depth: # of bits/pixel

Graphics System. Processor. Output Display. Input Devices. Frame Buffer. Memory. Array of pixels. Resolution: # of pixels Depth: # of bits/pixel Graphics System Input Devices Processor Memory Frame Buffer Output Display Array of pixels Resolution: # of pixels Depth: # of bits/pixel Input Devices Physical Devices: Keyboard, Mouse, Tablet, etc. Logical

More information

FROM VERTICES TO FRAGMENTS. Lecture 5 Comp3080 Computer Graphics HKBU

FROM VERTICES TO FRAGMENTS. Lecture 5 Comp3080 Computer Graphics HKBU FROM VERTICES TO FRAGMENTS Lecture 5 Comp3080 Computer Graphics HKBU OBJECTIVES Introduce basic implementation strategies Clipping Scan conversion OCTOBER 9, 2011 2 OVERVIEW At end of the geometric pipeline,

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

CS123 INTRODUCTION TO COMPUTER GRAPHICS. Clipping. Concepts, Algorithms for line clipping. 1 of 16. Andries van Dam. Clipping - 10/12/17

CS123 INTRODUCTION TO COMPUTER GRAPHICS. Clipping. Concepts, Algorithms for line clipping. 1 of 16. Andries van Dam. Clipping - 10/12/17 Clipping Concepts, Algorithms for line clipping 1 of 16 Line Clipping in 2D Clipping endpoints If x min x x max and y min y y max, the point is inside the clip rectangle. Endpoint analysis for lines: if

More information

Rendering. A simple X program to illustrate rendering

Rendering. A simple X program to illustrate rendering Rendering A simple X program to illustrate rendering The programs in this directory provide a simple x based application for us to develop some graphics routines. Please notice the following: All points

More information

The statement implies that any three intersection points of two distinct planes lie on a line.

The statement implies that any three intersection points of two distinct planes lie on a line. Math 3181 Dr. Franz Rothe February 23, 2015 All3181\3181_spr15ts1.tex 1 Solution of Test Name: Problem 1.1. The second part of Hilbert s Proposition 1 states: Any two different planes have either no point

More information

Overview. Pipeline implementation I. Overview. Required Tasks. Preliminaries Clipping. Hidden Surface removal

Overview. Pipeline implementation I. Overview. Required Tasks. Preliminaries Clipping. Hidden Surface removal Overview Pipeline implementation I Preliminaries Clipping Line clipping Hidden Surface removal Overview At end of the geometric pipeline, vertices have been assembled into primitives Must clip out primitives

More information

Lecture 25: Bezier Subdivision. And he took unto him all these, and divided them in the midst, and laid each piece one against another: Genesis 15:10

Lecture 25: Bezier Subdivision. And he took unto him all these, and divided them in the midst, and laid each piece one against another: Genesis 15:10 Lecture 25: Bezier Subdivision And he took unto him all these, and divided them in the midst, and laid each piece one against another: Genesis 15:10 1. Divide and Conquer If we are going to build useful

More information

Efficient Clipping of Arbitrary Polygons

Efficient Clipping of Arbitrary Polygons Efficient lipping of Arbitrary Polygons Günther Greiner Kai Hormann omputer Graphics Group, University of Erlangen Abstract lipping 2D polygons is one of the basic routines in computer graphics. In rendering

More information

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

Part 3: 2D Transformation

Part 3: 2D Transformation Part 3: 2D Transformation 1. What do you understand by geometric transformation? Also define the following operation performed by ita. Translation. b. Rotation. c. Scaling. d. Reflection. 2. Explain two

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

Clipping. Angel and Shreiner: Interactive Computer Graphics 7E Addison-Wesley 2015

Clipping. Angel and Shreiner: Interactive Computer Graphics 7E Addison-Wesley 2015 Clipping 1 Objectives Clipping lines First of implementation algorithms Clipping polygons (next lecture) Focus on pipeline plus a few classic algorithms 2 Clipping 2D against clipping window 3D against

More information

Lab Manual. Computer Graphics. T.E. Computer. (Sem VI)

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

Two-Dimensional Viewing. Chapter 6

Two-Dimensional Viewing. Chapter 6 Two-Dimensional Viewing Chapter 6 Viewing Pipeline Two-Dimensional Viewing Two dimensional viewing transformation From world coordinate scene description to device (screen) coordinates Normalization and

More information

From 3D World to 2D Screen. Hendrik Speleers

From 3D World to 2D Screen. Hendrik Speleers Hendrik Speleers Overview Synthetic camera Rendering pipeline World window versus viewport Clipping Cohen-Sutherland algorithm Rasterizing Bresenham algorithm Three different actors in a scene Objects:

More information

ALGORITHMS COMPLEXITY AND LINE CLIPPING PROBLEM SOLUTIONS

ALGORITHMS COMPLEXITY AND LINE CLIPPING PROBLEM SOLUTIONS ALGORITHMS COMPLEXITY AND LINE CLIPPING PROBLEM SOLUTIONS Vaclav Skala 1 Department of Informatics and Computer Science University of West Bohemia, Univerzitní 22, Box 314 306 14 Plzen Czech Republic Skala@kiv.zcu.cz

More information

Illumination Models III: Ray Tracing (View Dependent Global Illumination)

Illumination Models III: Ray Tracing (View Dependent Global Illumination) Illumination Models III: Ray Tracing (View Dependent Global Illumination) The University of Texas at Austin 1 Basic Definitions Ray Tracing/Casting: Setting: eyepoint, virtual screen (an array of virtual

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

Chapter 1. Linear Equations and Straight Lines. 2 of 71. Copyright 2014, 2010, 2007 Pearson Education, Inc.

Chapter 1. Linear Equations and Straight Lines. 2 of 71. Copyright 2014, 2010, 2007 Pearson Education, Inc. Chapter 1 Linear Equations and Straight Lines 2 of 71 Outline 1.1 Coordinate Systems and Graphs 1.4 The Slope of a Straight Line 1.3 The Intersection Point of a Pair of Lines 1.2 Linear Inequalities 1.5

More information

MODULE - 9. Subject: Computer Science. Module: Line Clipping. Module No: CS/CGV/9

MODULE - 9. Subject: Computer Science. Module: Line Clipping. Module No: CS/CGV/9 Quadrant 1 e-text e-pg Pathshala MODULE - 9 Subject: Computer Science Paper: Computer Graphics and Visualization Module: Line Clipping Module No: CS/CGV/9 Objectives: Understand Cohen-Sutherland Line Clipping

More information

AN EFFICIENT NEW ALGORITHM FOR 2-D LINE CLIPPING ITS DEVELOPMENT AND ANALYSIS

AN EFFICIENT NEW ALGORITHM FOR 2-D LINE CLIPPING ITS DEVELOPMENT AND ANALYSIS AN EFFICIENT NEW ALGORITHM FOR 2-D LINE CLIPPING ITS DEVELOPMENT AND ANALYSIS Authors: T. Nicholl, D. T. Lee, and R. Nicholl Presentation by Marcus McCurdy WHAT IS CLIPPING? Basically finding the intersection

More information

Scan Converting Lines

Scan Converting Lines Scan Conversion 1 Scan Converting Lines Line Drawing Draw a line on a raster screen between two points What s wrong with the statement of the problem? it doesn t say anything about which points are allowed

More information

Clipping and Intersection

Clipping and Intersection Clipping and Intersection Clipping: Remove points, line segments, polygons outside a region of interest. Need to discard everything that s outside of our window. Point clipping: Remove points outside window.

More information

Part IV. 2D Clipping

Part IV. 2D Clipping Part IV 2D Clipping The Liang-Barsky algorithm Boolean operations on polygons Outline The Liang-Barsky algorithm Boolean operations on polygons Clipping The goal of clipping is mainly to eliminate parts

More information

Maintaining Mathematical Proficiency

Maintaining Mathematical Proficiency Chapter 3 Maintaining Mathematical Proficiency Find the slope of the line.. y. y 3. ( 3, 3) y (, ) (, ) x x (, ) x (, ) ( 3, 3)... (, ) y (0, 0) 8 8 x x 8 8 y (, ) (, ) y (, ) (, 0) x Write an equation

More information

1. Let n be a positive number. a. When we divide a decimal number, n, by 10, how are the numeral and the quotient related?

1. Let n be a positive number. a. When we divide a decimal number, n, by 10, how are the numeral and the quotient related? Black Converting between Fractions and Decimals Unit Number Patterns and Fractions. Let n be a positive number. When we divide a decimal number, n, by 0, how are the numeral and the quotient related?.

More information

Fundamentals of Programming CS-110. Lecture 3

Fundamentals of Programming CS-110. Lecture 3 Fundamentals of Programming CS-110 Lecture 3 Operators Operators Operators are words or symbols that cause a program to do something to variables. OPERATOR TYPES: Type Operators Usage Arithmetic + - *

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

Renderer Implementation: Basics and Clipping. Overview. Preliminaries. David Carr Virtual Environments, Fundamentals Spring 2005

Renderer Implementation: Basics and Clipping. Overview. Preliminaries. David Carr Virtual Environments, Fundamentals Spring 2005 INSTITUTIONEN FÖR SYSTEMTEKNIK LULEÅ TEKNISKA UNIVERSITET Renderer Implementation: Basics and Clipping David Carr Virtual Environments, Fundamentals Spring 2005 Feb-28-05 SMM009, Basics and Clipping 1

More information

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

Clipping Algorithms; 8-5. Computer Graphics. Spring CS4815

Clipping Algorithms; 8-5. Computer Graphics. Spring CS4815 Computer Graphics Spring 2016-2017 Outline Clipping Algorithms; 8-5 1 Clipping Algorithms; 8-5 Announcements Mid-term: Week07?? Clipping: Introduction It is common for a region to be defined so that only

More information

On a Method in Algebra and Geometry

On a Method in Algebra and Geometry On a Method in Algebra and Geometry Felix Lazebnik Department of Mathematical Sciences University of Delaware Newark, DE 976 Often applications of a well-known fact or method are more exciting than the

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

Rendering. A simple X program to illustrate rendering

Rendering. A simple X program to illustrate rendering Rendering A simple X program to illustrate rendering The programs in this directory provide a simple x based application for us to develop some graphics routines. Please notice the following: All points

More information

Polygon Triangulation

Polygon Triangulation Polygon Triangulation Definition Simple Polygons 1. A polygon is the region of a plane bounded by a finite collection of line segments forming a simple closed curve. 2. Simple closed curve means a certain

More information

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

Topic 0. Introduction: What Is Computer Graphics? CSC 418/2504: Computer Graphics EF432. Today s Topics. What is Computer Graphics? 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/ Instructors: L0101, W 12-2pm

More information

3.1. 3x 4y = 12 3(0) 4y = 12. 3x 4y = 12 3x 4(0) = y = x 0 = 12. 4y = 12 y = 3. 3x = 12 x = 4. The Rectangular Coordinate System

3.1. 3x 4y = 12 3(0) 4y = 12. 3x 4y = 12 3x 4(0) = y = x 0 = 12. 4y = 12 y = 3. 3x = 12 x = 4. The Rectangular Coordinate System 3. The Rectangular Coordinate System Interpret a line graph. Objectives Interpret a line graph. Plot ordered pairs. 3 Find ordered pairs that satisfy a given equation. 4 Graph lines. 5 Find x- and y-intercepts.

More information

UNIT -8 IMPLEMENTATION

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

Intermediate Mathematics League of Eastern Massachusetts

Intermediate Mathematics League of Eastern Massachusetts Meet # January 010 Intermediate Mathematics League of Eastern Massachusetts Meet # January 010 Category 1 - Mystery Meet #, January 010 1. Of all the number pairs whose sum equals their product, what is

More information

CS 325 Computer Graphics

CS 325 Computer Graphics CS 325 Computer Graphics 02 / 29 / 2012 Instructor: Michael Eckmann Today s Topics Questions? Comments? Specifying arbitrary views Transforming into Canonical view volume View Volumes Assuming a rectangular

More information

CS770/870 Spring 2017 Curve Generation

CS770/870 Spring 2017 Curve Generation CS770/870 Spring 2017 Curve Generation Primary resources used in preparing these notes: 1. Foley, van Dam, Feiner, Hughes, Phillips, Introduction to Computer Graphics, Addison-Wesley, 1993. 2. Angel, Interactive

More information

Set the Viewport. Set the Viewport Clipping. Set the Viewport. Set the Viewport. Set the Viewport. Resizing the Viewport W = H

Set the Viewport. Set the Viewport Clipping. Set the Viewport. Set the Viewport. Set the Viewport. Resizing the Viewport W = H To draw an undistorted version of the data in a viewport, you need to ensure the viewport and the window have the same aspect ratio. i.e. W H window window W = H viewport viewport Computer Graphics CSC470

More information

MET71 COMPUTER AIDED DESIGN

MET71 COMPUTER AIDED DESIGN UNIT - II BRESENHAM S ALGORITHM BRESENHAM S LINE ALGORITHM Bresenham s algorithm enables the selection of optimum raster locations to represent a straight line. In this algorithm either pixels along X

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

Clipping & Culling. Lecture 11 Spring Trivial Rejection Outcode Clipping Plane-at-a-time Clipping Backface Culling

Clipping & Culling. Lecture 11 Spring Trivial Rejection Outcode Clipping Plane-at-a-time Clipping Backface Culling Clipping & Culling Trivial Rejection Outcode Clipping Plane-at-a-time Clipping Backface Culling Lecture 11 Spring 2015 What is Clipping? Clipping is a procedure for spatially partitioning geometric primitives,

More information

More on Coordinate Systems. Coordinate Systems (3) Coordinate Systems (2) Coordinate Systems (5) Coordinate Systems (4) 9/15/2011

More on Coordinate Systems. Coordinate Systems (3) Coordinate Systems (2) Coordinate Systems (5) Coordinate Systems (4) 9/15/2011 Computer Graphics using OpenGL, Chapter 3 Additional Drawing Tools More on Coordinate Systems We have been using the coordinate system of the screen window (in pixels). The range is from 0 (left) to some

More information

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

SRI VENKATESWARA COLLEGE OF ENGINEERING. COURSE DELIVERY PLAN - THEORY Page 1 of 6 COURSE DELIVERY PLAN - THEORY Page 1 of 6 Department of Information Technology B.E/B.Tech/M.E/M.Tech : IT Regulation: 2016 PG Specialisation : -- Sub. Code / Sub. Name : IT16501 / Graphics and Multimedia

More information

CS184 : Foundations of Computer Graphics Professor David Forsyth Final Examination

CS184 : Foundations of Computer Graphics Professor David Forsyth Final Examination CS184 : Foundations of Computer Graphics Professor David Forsyth Final Examination (Total: 100 marks) Figure 1: A perspective view of a polyhedron on an infinite plane. Cameras and Perspective Rendering

More information

6th Bay Area Mathematical Olympiad

6th Bay Area Mathematical Olympiad 6th Bay Area Mathematical Olympiad February 4, 004 Problems and Solutions 1 A tiling of the plane with polygons consists of placing the polygons in the plane so that interiors of polygons do not overlap,

More information

2 Solution of Homework

2 Solution of Homework Math 3181 Name: Dr. Franz Rothe February 6, 2014 All3181\3181_spr14h2.tex Homework has to be turned in this handout. The homework can be done in groups up to three due February 11/12 2 Solution of Homework

More information

Contents. MATH 32B-2 (18W) (L) G. Liu / (TA) A. Zhou Calculus of Several Variables. 1 Homework 1 - Solutions 3. 2 Homework 2 - Solutions 13

Contents. MATH 32B-2 (18W) (L) G. Liu / (TA) A. Zhou Calculus of Several Variables. 1 Homework 1 - Solutions 3. 2 Homework 2 - Solutions 13 MATH 32B-2 (8) (L) G. Liu / (TA) A. Zhou Calculus of Several Variables Contents Homework - Solutions 3 2 Homework 2 - Solutions 3 3 Homework 3 - Solutions 9 MATH 32B-2 (8) (L) G. Liu / (TA) A. Zhou Calculus

More information

ARINC 661 Based Graphics Engine for Aircraft Head up Display

ARINC 661 Based Graphics Engine for Aircraft Head up Display ARINC 661 Based Graphics Engine for Aircraft Head up Display Ashwin P Chandran #1, Vandan Revanur #2, Apoorva K Shah #3, Kavya TR Nayaka #4, Gurusewak Singh *5, Lakshmi KP $6 # Bachelors in Engineering,Electronics

More information

Computer Graphics (CS 543) Lecture 9 (Part 2): Clipping. Prof Emmanuel Agu. Computer Science Dept. Worcester Polytechnic Institute (WPI)

Computer Graphics (CS 543) Lecture 9 (Part 2): Clipping. Prof Emmanuel Agu. Computer Science Dept. Worcester Polytechnic Institute (WPI) Computer Graphics (CS 543) Lecture 9 (Part 2): Clipping Prof Emmanuel Agu Computer Science Dept. Worcester Polytechnic Institute (WPI) OpenGL Stages After projection, several stages before objects drawn

More information

CSE528 Computer Graphics: Theory, Algorithms, and Applications

CSE528 Computer Graphics: Theory, Algorithms, and Applications CSE528 Computer Graphics: Theory, Algorithms, and Applications Hong Qin Stony Brook University (SUNY at Stony Brook) Stony Brook, New York 11794-2424 Tel: (631)632-845; Fax: (631)632-8334 qin@cs.stonybrook.edu

More information

Z- Buffer Store the depth for each pixel on the screen and compare stored value with depth of new pixel being drawn.

Z- Buffer Store the depth for each pixel on the screen and compare stored value with depth of new pixel being drawn. Andrew Lewis - Graphics Revision Keywords PIXEL FRAME BUFFER memory of the screen VIDEO - SCREEN - WINDOW - POLYGON filled area bound by straight lines SPLINE bit of wood used by draughtsmen to draw curves

More information

Stereo Vision. MAN-522 Computer Vision

Stereo Vision. MAN-522 Computer Vision Stereo Vision MAN-522 Computer Vision What is the goal of stereo vision? The recovery of the 3D structure of a scene using two or more images of the 3D scene, each acquired from a different viewpoint in

More information

An Analysis of Interactive Deformable Solid Object Modeling

An Analysis of Interactive Deformable Solid Object Modeling An Analysis of Interactive Deformable Solid Object Modeling Shrirang Yardi Department of Electrical and Computer Engineering Virginia Tech Blacksburg, VA yardi@vt.edu Benjamin Bishop Department of Computing

More information

An Assertion-Guided Derivation of a Circle Drawing Algorithm

An Assertion-Guided Derivation of a Circle Drawing Algorithm An Assertion-Guided Derivation of a Circle Drawing Algorithm Derrick G. Kourie and Bruce W. Watson Department of Computer Science, University of Pretoria Pretoria 0002, South Africa dkourie@cs.up.ac.za

More information

CS184 : Foundations of Computer Graphics Professor David Forsyth Final Examination (Total: 100 marks)

CS184 : Foundations of Computer Graphics Professor David Forsyth Final Examination (Total: 100 marks) CS184 : Foundations of Computer Graphics Professor David Forsyth Final Examination (Total: 100 marks) Cameras and Perspective Figure 1: A perspective view of a polyhedron on an infinite plane. Rendering

More information

Repetition Through Recursion

Repetition Through Recursion Fundamentals of Computer Science I (CS151.02 2007S) Repetition Through Recursion Summary: In many algorithms, you want to do things again and again and again. For example, you might want to do something

More information

3D Rendering Pipeline (for direct illumination)

3D Rendering Pipeline (for direct illumination) Clipping 3D Rendering Pipeline (for direct illumination) 3D Primitives 3D Modeling Coordinates Modeling Transformation Lighting 3D Camera Coordinates Projection Transformation Clipping 2D Screen Coordinates

More information

Mapping Common Core State Standard Clusters and. Ohio Grade Level Indicator. Grade 5 Mathematics

Mapping Common Core State Standard Clusters and. Ohio Grade Level Indicator. Grade 5 Mathematics Mapping Common Core State Clusters and Ohio s Grade Level Indicators: Grade 5 Mathematics Operations and Algebraic Thinking: Write and interpret numerical expressions. Operations and Algebraic Thinking:

More information

LINEAR PROGRAMMING: A GEOMETRIC APPROACH. Copyright Cengage Learning. All rights reserved.

LINEAR PROGRAMMING: A GEOMETRIC APPROACH. Copyright Cengage Learning. All rights reserved. 3 LINEAR PROGRAMMING: A GEOMETRIC APPROACH Copyright Cengage Learning. All rights reserved. 3.1 Graphing Systems of Linear Inequalities in Two Variables Copyright Cengage Learning. All rights reserved.

More information

Computer Graphics. - Clipping - Philipp Slusallek & Stefan Lemme

Computer Graphics. - Clipping - Philipp Slusallek & Stefan Lemme Computer Graphics - Clipping - Philipp Slusallek & Stefan Lemme Clipping Motivation Projected primitive might fall (partially) outside of the visible display window E.g. if standing inside a building Eliminate

More information

Computer Engineering and Intelligent Systems ISSN (Paper) ISSN (Online) Vol.5, No.4, 2014

Computer Engineering and Intelligent Systems ISSN (Paper) ISSN (Online) Vol.5, No.4, 2014 Implementation of an Efficient Scan-Line Polygon Fill Algorithm Dr. Ismail Al-Rawi Arab Open University (Kuwait Branch), P.O 830 Al Ardia, P.C 92400, Kuwait *E-Mail: ism_49@hotmail.com Abstract Area filling

More information

Basics of Computational Geometry

Basics of Computational Geometry Basics of Computational Geometry Nadeem Mohsin October 12, 2013 1 Contents This handout covers the basic concepts of computational geometry. Rather than exhaustively covering all the algorithms, it deals

More information

Introduction. Linear because it requires linear functions. Programming as synonymous of planning.

Introduction. Linear because it requires linear functions. Programming as synonymous of planning. LINEAR PROGRAMMING Introduction Development of linear programming was among the most important scientific advances of mid-20th cent. Most common type of applications: allocate limited resources to competing

More information

Replica Technique for Geometric Modelling

Replica Technique for Geometric Modelling Replica Technique for Geometric Modelling HAMEED ULLAH KHAN Department of Information Systems, College of Computer & Information Sciences, King Saud University, Riyadh, Kingdom of Saudi Arabia hukhanafridi@yahoo.com

More information

CSE328 Fundamentals of Computer Graphics

CSE328 Fundamentals of Computer Graphics CSE328 Fundamentals of Computer Graphics Hong Qin State University of New York at Stony Brook (Stony Brook University) Stony Brook, New York 794--44 Tel: (63)632-845; Fax: (63)632-8334 qin@cs.sunysb.edu

More information

Approximation of Multiplication of Trapezoidal Epsilon-delta Fuzzy Numbers

Approximation of Multiplication of Trapezoidal Epsilon-delta Fuzzy Numbers Advances in Fuzzy Mathematics ISSN 973-533X Volume, Number 3 (7, pp 75-735 Research India Publications http://wwwripublicationcom Approximation of Multiplication of Trapezoidal Epsilon-delta Fuzzy Numbers

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

Diocese of Boise Math Curriculum 5 th grade

Diocese of Boise Math Curriculum 5 th grade Diocese of Boise Math Curriculum 5 th grade ESSENTIAL Sample Questions Below: What can affect the relationshi p between numbers? What does a decimal represent? How do we compare decimals? How do we round

More information

Computers & Graphics, Pergamon Press, Vol.21, No.2, pp , 1997

Computers & Graphics, Pergamon Press, Vol.21, No.2, pp , 1997 A Fast Algorithm for Line Clipping by Convex Polyhedron in E 3 Václav Skala 1 Department of Informatics and Computer Science University of West Bohemia Univerzitní 22, Box 314, 306 14 Plzen Czech Republic

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/ Instructors: L2501, T 6-8pm

More information

GCSE-AS Mathematics Bridging Course. Chellaston School. Dr P. Leary (KS5 Coordinator) Monday Objectives. The Equation of a Line.

GCSE-AS Mathematics Bridging Course. Chellaston School. Dr P. Leary (KS5 Coordinator) Monday Objectives. The Equation of a Line. GCSE-AS Mathematics Bridging Course Chellaston School Dr (KS5 Coordinator) Monday Objectives The Equation of a Line Surds Linear Simultaneous Equations Tuesday Objectives Factorising Quadratics & Equations

More information

Incremental Form. Idea. More efficient if we look at d k, the value of the decision variable at x = k

Incremental Form. Idea. More efficient if we look at d k, the value of the decision variable at x = k Idea 1 m 0 candidates last pixel Note that line could have passed through any part of this pixel Decision variable: d = x(a-b) d is an integer d < 0 use upper pixel d > 0 use lower pixel Incremental Form

More information

Math Analysis Chapter 1 Notes: Functions and Graphs

Math Analysis Chapter 1 Notes: Functions and Graphs Math Analysis Chapter 1 Notes: Functions and Graphs Day 6: Section 1-1 Graphs Points and Ordered Pairs The Rectangular Coordinate System (aka: The Cartesian coordinate system) Practice: Label each on the

More information

In math, the rate of change is called the slope and is often described by the ratio rise

In math, the rate of change is called the slope and is often described by the ratio rise Chapter 3 Equations of Lines Sec. Slope The idea of slope is used quite often in our lives, however outside of school, it goes by different names. People involved in home construction might talk about

More information

HP-35s Calculator Program Curves 2A

HP-35s Calculator Program Curves 2A Programmer: Dr. Bill Hazelton Date: March, 2008. Version: 1.0 Mnemonic: P for Parabolic Vertical Curve. Line Instruction Display User Instructions P001 LBL P LBL P P002 CLSTK CLEAR 5 P003 FS? 10 FLAGS

More information

Subject : Mathematics Level B1 Class VII Lesson: 1 (Integers)

Subject : Mathematics Level B1 Class VII Lesson: 1 (Integers) Subject : Mathematics Level B1 Class VII Lesson: 1 (Integers) Skill/Competency /Concept Computational Skill Properties of Addition and subtraction of integers Multiplication and division Operation on integer.

More information

COMP30019 Graphics and Interaction Scan Converting Polygons and Lines

COMP30019 Graphics and Interaction Scan Converting Polygons and Lines COMP30019 Graphics and Interaction Scan Converting Polygons and Lines Department of Computer Science and Software Engineering The Lecture outline Introduction Scan conversion Scan-line algorithm Edge coherence

More information

Computer Graphics (CS 543) Lecture 10 (Part 1): 3D Clipping. Prof Emmanuel Agu. Computer Science Dept. Worcester Polytechnic Institute (WPI)

Computer Graphics (CS 543) Lecture 10 (Part 1): 3D Clipping. Prof Emmanuel Agu. Computer Science Dept. Worcester Polytechnic Institute (WPI) Computer Graphics (CS 543) Lecture 10 (Part 1): 3D Clipping Prof Emmanuel Agu Computer Science Dept. Worcester Polytechnic Institute (WPI) Liang Barsky 3D Clipping Goal: Clip object edge-by-edge against

More information

Rational Expressions Sections

Rational Expressions Sections Rational Expressions Sections Multiplying / Dividing Let s first review how we multiply and divide fractions. Multiplying / Dividing When multiplying/ dividing, do we have to have a common denominator?

More information

Building Concepts: Moving from Proportional Relationships to Linear Equations

Building Concepts: Moving from Proportional Relationships to Linear Equations Lesson Overview In this TI-Nspire lesson, students use previous experience with proportional relationships of the form y = kx to consider relationships of the form y = mx and eventually y = mx + b. Proportional

More information

Compiler Design Prof. Y. N. Srikant Department of Computer Science and Automation Indian Institute of Science, Bangalore

Compiler Design Prof. Y. N. Srikant Department of Computer Science and Automation Indian Institute of Science, Bangalore Compiler Design Prof. Y. N. Srikant Department of Computer Science and Automation Indian Institute of Science, Bangalore Module No. # 10 Lecture No. # 16 Machine-Independent Optimizations Welcome to the

More information

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

Examples. Clipping. The Rendering Pipeline. View Frustum. Normalization. How it is done. Types of operations. Removing what is not seen on the screen Computer Graphics, Lecture 0 November 7, 006 Eamples Clipping Types of operations Accept Reject Clip Removing what is not seen on the screen The Rendering Pipeline The Graphics pipeline includes one stage

More information

Core Mathematics 1 Graphs of Functions

Core Mathematics 1 Graphs of Functions Regent College Maths Department Core Mathematics 1 Graphs of Functions Graphs of Functions September 2011 C1 Note Graphs of functions; sketching curves defined by simple equations. Here are some curves

More information

An introduction to interpolation and splines

An introduction to interpolation and splines An introduction to interpolation and splines Kenneth H. Carpenter, EECE KSU November 22, 1999 revised November 20, 2001, April 24, 2002, April 14, 2004 1 Introduction Suppose one wishes to draw a curve

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

Math Analysis Chapter 1 Notes: Functions and Graphs

Math Analysis Chapter 1 Notes: Functions and Graphs Math Analysis Chapter 1 Notes: Functions and Graphs Day 6: Section 1-1 Graphs; Section 1- Basics of Functions and Their Graphs Points and Ordered Pairs The Rectangular Coordinate System (aka: The Cartesian

More information

Page 1 of 32. Website: Mobile:

Page 1 of 32. Website:    Mobile: Exercise 7.1 Question 1: Find the distance between the following pairs of points: (i) (2, 3), (4, 1) (ii) ( 5, 7), ( 1, 3) (iii) (a, b), ( a, b) (i) Distance between the two points is given by (ii) Distance

More information