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 notes for negative accelerations, Important Notes for Negative Ac...

Important Notes for Negative Accelerations Note : Having projections of points on curve, above Y axis we will obtain a pattern similar to figure 8 that is needed to produce ne

Sequence of steps to generate a full animation, Sequence of Steps to Genera...

Sequence of Steps to Generate a Full Animation The sequence of steps to generate a full animation would be as given below: 1)  Improve a script or story for the animation.

Polygon representation methods - space partitioning, Polygon representation...

Polygon representation methods - Space Partitioning Representations Space partitioning representations: this type of representation is used for explain the interior pr

State the areas of use of data goggles, State the Areas of use of data gogg...

State the Areas of use of data goggles Entertainment   Used in television/films as special effects (for example "holodeck" in Star Trek: The Next Generation and Brazilian

C++ programming, self test exercise 17 asked you to overload the operator >...

self test exercise 17 asked you to overload the operator >> and the operator Overload biinary operator + to add pairs according to the rule (a, b) + (c, d) = (a + c, b, + d) overl

Explain the lofting method in maya, QUESTION 1: a) Draw a Bezier curve ...

QUESTION 1: a) Draw a Bezier curve showing the following components i. hull ii. curve CV iii. span iv. start and end point b) Maya provides highly effective tools for all t

Point clipping - 2-d viewing and clipping, Point clipping - 2-d viewing and...

Point clipping - 2-d viewing and clipping Point clipping is the method related to suitable display of points in the scene, though this type of clipping is utilized less freque

Differentiate between raster and vector images, QUESTION a) Differentia...

QUESTION a) Differentiate between raster and vector images. b) Explain the concept of bit depth. What is the minimum number if bits required for a one-colour digital image t

Compare bresenham line generation algorithm with dda, 1. Compare Bresenham...

1. Compare Bresenham line generation with Digital Differential Analyzer line generation. Ans.   Bresenham line generation algorithm is better than Digital Differential Analyze

Macintosh - hardware for computer animation, Macintosh - Hardware for compu...

Macintosh - Hardware for computer animation It was originally designed to be graphic and desktop publishing machines. Macs did not turn into which widely known till recently, a

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