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

Important points about types of light resources, Important points about Ty...

Important points about Types of light resources - illumination model Note: While we see an opaque non-luminous object, we notice reflected light by one surface of the object

Important points about the diffuse reflection, Important Points About the D...

Important Points About the Diffuse Reflection An extremely rough surface appears uniformly bright from each viewing direction Q the intensity of reflected light is identical i

Functions of hand-held pointer and tablet, The hand-held pointer and tablet...

The hand-held pointer and tablet in the form of a stylus i.e. pen or puck can function one or more of these three functions: (i)  For choosing positions on a drawing or on a men

Beam penetration method and shadow mask method, Beam Penetration Method and...

Beam Penetration Method and Shadow Mask Method Two methods exist for displaying colors in a CRT monitor - beam penetration method and shadow mask method. Beam penetration metho

Midpoint circle generation algorithm - 2d shape primitives, Midpoint Circle...

Midpoint Circle Generation Algorithm   Just as a line drawing algorithm approximates infinite number of points on a line segment by only a finite number of pixels, a circle dra

Definitions of hypertext, Definitions of Hypertext A manner of pre...

Definitions of Hypertext A manner of presenting information online along with links among one piece of information and the other. These links are termed as hypertext links

Numerical analysis packages-image processing, Numerical Analysis Packages: ...

Numerical Analysis Packages: generally utilized software is: MatLab. Characteristics: Focus generally on numeric processing. Programming with mathematical skills usuall

2d clipping algorithms - clipping and 3d primitives, 2D Clipping Algorithms...

2D Clipping Algorithms Clipping is an operation that eliminates invisible objects from the view window.  To understand clipping, recall that when we take a snapshot of a scene,

Write a c-code that plots an object on the window, Write a C-code that plot...

Write a C-code that plots an object on the window and on the user's click of mouse on the window, the object starts rotating continuously until the user presses the mouse again.

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