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

Essentialily of computer simulation, Essentialily of Computer Simulation ...

Essentialily of Computer Simulation You may want to understand why to do simulation? Is there any one way to perform the tasks? To converse these matters lets briefly discuss

Interpolation of surface - polygon rendering, Interpolation of surface - Po...

Interpolation of surface - Polygon Rendering Interpolation of surface normals beside the polygonedge between two vertices is demonstrated above in the figure 15. Here the norm

What is surface patch, What is surface patch?  A single surface element...

What is surface patch?  A single surface element can be explained as the surface traced out as two parameters (u, v) take all possible values between 0 and 1 in a two-parameter

Anti aliasing - modeling and rendering, Anti Aliasing - Modeling and Render...

Anti Aliasing - Modeling and Rendering It is a method for enhancing the realism of an image through eliminating the jagged edges from it. Such jagged edges or "jaggies", appe

Viewing transformation, Viewing Transformation In previous section, we...

Viewing Transformation In previous section, we have discussed about the geometric transformations as Translation, Shearing, Reflection, Scaling and Rotation. Rotation, Reflect

For orthographic parallel projection, For orthographic parallel projection:...

For orthographic parallel projection:    glOrtho(left, right, bottom, top, near, far);  glOrtho2D(left, right, bottom, top);    Here left, right define the x-direction ex

Determine the transformation matrix for cavalier projection, Determine the ...

Determine the transformation matrix for: a) Cavalier projection with θ=45 0 , and b) Cabinet projection with θ=30 0    c) Draw the projection of unit cube for all transfor

Key frame systems - computer animation, Key Frame Systems - computer animat...

Key Frame Systems - computer animation This method is for low-level motion control. In fact these systems comprise languages that are designed simply to produce the in-between

Categories of line segments - 2d clipping algorithms, Categories of Line Se...

Categories of Line Segments It categorizes line segments into three categories (i) trivially rejected (ii) trivially selected (iii) may be partially visible or totally invisibl

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