Draw a long line segment using dda line drawing algorithm, Computer Graphics

Assignment Help:

Draw a long line segment using (i) DDA line drawing algorithm (ii) Bresenham line drawing algorithm (iii) OpenGL function using GL_LINES.  Observe if DDA line segment deflects from Bresenham line segment or the graphics library line segment. 

Answer: Implementation of Bresenham and DDA algorithm is already given on page 20-21 of this unit.  Use the code to draw a line segment (10, 20) - (1020, 700) using both the algorithms.  Further, we draw the same line segment by adding the following code in the RenderScene( ) function of the code using the following OpenGL library function.    

glBegin(GL_LINES);

   glVertex2i(1020,700);

   glVertex2i(10,20);

   glEnd();  

Use a different colour for each of the three codes. Accordingly code of RenderScene( ) will be modified as follows:   

void RenderScene(void)

{

glClear(GL_COLOUR_BUFFER_BIT);

glColour3f(1.0f, 0.0f, 0.0f);    

bresenham(10,20,1020,700);//Bresenham line segment with RED

   glColour3f(0.0f, 1.0f, 0.0f);        

  dda(10,20,1020,700); //dda line segment with GREEN

  glColour3f(1.0f, 1.0f, 1.0f);        

  glBegin(GL_LINES);

   glVertex2i(1020,700);

   glVertex2i(10,20);

  glEnd(); //OpenGl Line segment with WHITE

        glFlush();   

}

On present day systems with very high accuracy on floating point calculations all the three line segments are plotting almost the same line segment. However, if you run the same program on an older system, you would find that the pixels generated by DDA algorithm are slightly away from the two line segments that have been generated using Bresenham algorithm and OpenGL function. The OpenGL function and Bresenham algorithm produce almost the same line segments.


Related Discussions:- Draw a long line segment using dda line drawing algorithm

Find out average unit normal vector at each polygon vertex, To find out ave...

To find out average unit normal vector at each polygon vertex At each polygon vertex as demonstrated by point V in the figure above, the normal vector is acquired by averaging

Polygon -rendering methods, Polygon -Rendering Methods Now we will see...

Polygon -Rendering Methods Now we will see the application of an illumination model to execute the rendering of standard graphics objects that are formed along with polygonal

What is the minimum amount of video ram, Consider a raster system with the ...

Consider a raster system with the resolution of 1024 x 768 pixels and the color palette calls for 65,536 colors. What is the minimum amount of video RAM that the computer must have

2d line segment generation - 2d shape primitives, 2D Line Segment Generatio...

2D Line Segment Generation  A digitally plotted line is basically an approximation of infinite number of points on an abstract line segment by only a finite number of points on

CRT, why there is coating of phosphorous on CRT screen?

why there is coating of phosphorous on CRT screen?

Curved surfaces, Build a program that allows: 1. using mouse or keyboard...

Build a program that allows: 1. using mouse or keyboard to move around on a set of 16 control points;  2. modify the value (drag along x, y, or z) of a point;  3. display

Area subdivision method for hidden surface removal, Q.  Write a short note...

Q.  Write a short note on area subdivision method for hidden surface removal.   Ans. Area Subdivision This technique for hidden- surface removal is essentially an image- spac

Parallel projection, Parallel Projection In parallel projection, object...

Parallel Projection In parallel projection, objects in scene are projected onto the 2D view plane along rays parallel to a projection vector. Parallel projection is orthogra

Ellipse generation algorithm - 2d shape primitives, Ellipse Generation Algo...

Ellipse Generation Algorithm  You know that a circle is symmetric in all the octants, while ellipse is symmetric with respect to four quadrants.  Therefore, to draw an ellipse,

Exemplify bresenham line generation algorithm by digitizing, Example: Exem...

Example: Exemplify the Bresenham line generation algorithm through digitizing the line along with end points (20, 10) and (30, 18) Solution: m =    (y2 - y1)/( x2 - x1)  =

Write Your Message!

Captcha
Free Assignment Quote

Assured A++ Grade

Get guaranteed satisfaction & time on delivery in every assignment order you paid with us! We ensure premium quality solution document along with free turntin report!

All rights reserved! Copyrights ©2019-2020 ExpertsMind IT Educational Pvt Ltd