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

Dda, what is dda

what is dda

Handling mouse input, When you set up your project, create the class as an ...

When you set up your project, create the class as an "ACM Graphics Program", rather than a plain class. This will perform the necessary preparations for you to use mouse input in y

Hypertext/media and human memory, Hypertext/media and Human Memory Huma...

Hypertext/media and Human Memory Humans associate pieces of information along with other information and make complicated knowledge structures. Thus, this is also said as the h

Three dimensional concepts and display methods, Three Dimensional Concepts ...

Three Dimensional Concepts and Display Methods   Imagine yourself taking a picture by a camera.  What do you normally do?  You specify a viewpoint and view direction and then s

Translation, Translation, Rotation and Scaling -  output primitives 1. ...

Translation, Rotation and Scaling -  output primitives 1. Two basic approaches used in character generation are - Bitmap method and outline method.  2. All 2D geometric tran

Cases of clip a line segment-pq, Cases of clip a line segment-pq Case...

Cases of clip a line segment-pq Case 1: As we determine a new value of t E that is value of parameter t for any potentially entering (PE) point we select t max as:  t max

Description and measurement of circadian rhythms, The description and measu...

The description and measurement of circadian rhythms. Describe the standard method used for the recording and graphing of behavioral rhythms in animals, especially the use

Question, what are the steps involved in 3d transformation explain

what are the steps involved in 3d transformation explain

Write a c-code which generates a font interactively, Write a C-code which g...

Write a C-code which generates a font interactively.This means after every n mouse clicks, a Bezier curve is generated and then the terminal point of the last drawn Bezier curve is

Area filling algorithms - output primitives, Area Filling Algorithms Be...

Area Filling Algorithms Before we go ahead with area filling algorithms, a word about pixel addressing and object geometry. You know that line segments are discretized into fin

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