Slideshare uses cookies to improve functionality and performance, and to provide you with relevant advertising. If you continue browsing the site, you agree to the use of cookies on this website. See our User Agreement and Privacy Policy.

Slideshare uses cookies to improve functionality and performance, and to provide you with relevant advertising. If you continue browsing the site, you agree to the use of cookies on this website. See our Privacy Policy and User Agreement for details.

Successfully reported this slideshow.

Like this presentation? Why not share!

- Dda line-algorithm by Praveen Kumar 4348 views
- Clipping in Computer Graphics by Laxman Puri 9451 views
- Segments in Graphics by Rajani Thite 11960 views
- dda algorithm by 774474 1322 views
- Digital Differential Analyzer Line ... by Kasun Ranga Wijew... 3753 views
- Bresenham Line Drawing Algorithm by Mahesh Kodituwakku 15864 views

No Downloads

Total views

23,973

On SlideShare

0

From Embeds

0

Number of Embeds

5

Shares

0

Downloads

751

Comments

0

Likes

14

No embeds

No notes for slide

- 1. Line Drawing AlgorithmsA line in Computer graphics typically refers to line segment, which is a portion of straight line that extends indefinitely in opposite direction. It is defined by its two end points & the slope intercept equation for a line: y = mx + b (1)where, m = Slope of the line b = the y intercept of a line
- 2. The two endpoints of a line segment are specified at positions (x1,y1) and (x2,y2). y P2(x2,y2) P1(x1,y1) b 0 x
- 3. We can determine the value for slope m & b intercept as m = y2-y1/x2-x1 (2)And, b = y1 – mx1 (3)For a given x interval Δx along a line, we cancompute the corresponding y interval Δy from Δy = m Δx (4)Similarly, we can obtain x interval Δx by Δy: Δx = Δy/m (5)
- 4. If |m|<1, then for every integer value of x between and excluding x1 and x2, calculate the corresponding value of y using equation Δy = m Δx & scan convert (x,y).If |m|>1, then for every integer value of y between and excluding y1 and y2, calculate the corresponding value of x using equation Δx = Δy/m & scan convert (x,y).If |m|=1, Δx = Δy. In each case, a smooth line with slope m is generated between the specific endpoints.
- 5. Example 1 The endpoints of line are(0,0) & (6,18). Compute each value of y as x steps from 0 to 6 and plot the result.Solution : Equation of line is y= mx +bm = y2-y1/x2-x1= 18-0/6-0 = 3Next the y intercept b is found by plugging y1& x1 into the equation y = 3x + b, 0 = 3(0) + b. Therefore, b=0, so the equation for the line is y= 3x.
- 6. While this approach is mathematically sound, it involves floating-point computation (multiplication & addition) in every step that uses the line equation since m & b are generally real numbers. The challenge is to find a way to achieve the same goal as quickly as possible.
- 7. DDA Algorithm The digital differential analyzer (DDA)algorithm is an incremental scan-conversion method. Such an approach ischaracterized by performing calculations ateach step using results from the precedingstep. Suppose, at step i we havecalculated(xi, yi) to be a point on theline.Since the next point (xi+1,yi+1) shouldsatisfy Δy/Δx= m where Δy= yi+1 – yi &Δx = xi+1 – xi.
- 8. We have, yi+1 = yi + mΔx yi+1 = yi + Δy (1)Or xi+1 = xi + Δy/m (2)Algorithm:(x1,y1) (x2,y2) are the end points and dx, dy are the float variables.(i) If abs(x2-x1) > abs(y2-y1) then length = abs(x2-x1) else length = abs(y2-y1) endif
- 9. (ii) dx = (x2-x1)/length dy = (y2-y1)/length(iii) x = x1 + 0.5 y = y1 + 0.5(iv) i=0(v) Plot (trunc(x), trunc(y))(vi) x = x + dx y = y + dy(vii) i=i+1
- 10. (viii) If i < length then go to step (v)(ix) StopExample 2 Scan convert a line having end points (3,2) & (4,7) using DDA.Solution: x2 - x1 = 4-3 = 1 y2 - y1 = 7-2 = 5As, abs(x2-x1) < abs(y2-y1) then length = y2-y1 = 5 dx = (x2-x1)/ length = 1/5 = .2 dy = (y2-y1)/ length = 5/5 = 1
- 11. x1 y1 x2 y2 L dx dy i x y Result Plot3 2 4 7 5 .2 1 0 3.5 2.5 3.5, 2.5 3,2 1 3.7 3.5 3.7,3.5 3,3 2 3.9 4.5 3.9,4.5 3,4 3 4.1 5.5 4.1,5.5 4,5 4 4.3 6.5 4.3,6.5 4,6 5 4.5 7.5 4.5,7.5 4,7
- 12. Limitations of DDA:(1) The rounding operation & floating point arithmetic are time consuming procedures.(2) The accumulation of round-off error in successive addition of floating point increment can cause the calculated pixel position to drift away from the true line path for long line segment.

No public clipboards found for this slide

Be the first to comment