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 program to plot line segments, Use DDA algorithm to get the output of y...

Use DDA algorithm to get the output of your program as shown in Figure ANs: Use DDA( ) function to plot line segments that have end points on diametrically opposite points

Design a graphical user interface, 1. Implement proper exception handling m...

1. Implement proper exception handling mechanism for this application. 2. Display all data a. Search specific data (depending of the user selection, your application should e

What do you mean by emissive and non-emissive displays, What do you mean by...

What do you mean by emissive and non-emissive displays? EMISSIVE: The emissive display changes electrical energy into light energy. The plasma panels, thin film ele

Draw a picture in wpf dotnet programming using visio, is there any plugin a...

is there any plugin available to draw a picture in wpf dotnet programming using microsoft visio?

Implement the boundary fill and flood fill algorithm, 1. Implement the boun...

1. Implement the boundary fill algorithm and flood fill algorithm in C-language and use your code to fill two different types of closed areas such as  i)  A Circle ii)  A sel

Identify what the use of homogenous co-ordinates, 1. Why are homogeneous co...

1. Why are homogeneous co-ordinates utilized in computer vision? I want to identify what the use of homogenous co-ordinates makes possible in terms of camera models. 2. Consider

Education and training, explain in detail the application of computer graph...

explain in detail the application of computer graphics in education and training?

Three dimensional transformations, Three Dimensional Transformations A ...

Three Dimensional Transformations A 3D geometric transformation is used extensively in object modelling and rendering.2D transformations are naturally extended to 3D situations

Transformation, Explain window to view port transformation

Explain window to view port transformation

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