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

Determine general graphics system designed for a programmer, Explain the di...

Explain the differences among a general graphics system designed for a programmer and one designed for a specific application, such as architectural design? Basically, package

Briefly explain the 12 stages in image processing, QUESTION (a) In Autom...

QUESTION (a) In Automatic Contrast Adjustment briefly explain how to stretch an image to its full intensity (b) Write down a mathematical function of a Modified Automatic Con

3d studio max -softwares for computer animation, 3DStudio Max -Softwares fo...

3DStudio Max -Softwares for computer animation The successor to 3-DStudio 3.0, 3-DStudio Max runs in WindowsNT. This is completely object-oriented, featuring new enhancements a

Aspect ratio - display devices, Aspect ratio - Display Devices Ratio of...

Aspect ratio - Display Devices Ratio of vertical points to horizontal points necessary to produce equal length lines in both directions on the screen. For example, in a CRT mon

High level techniques (motion generalized), High level techniques (motion g...

High level techniques (motion generalized) Techniques utilized to explain general motion behavior of any of graphic object, such techniques are algorithms or models utilized to

Texturing - texture coordinate, Background Texturing is like wallpaperin...

Background Texturing is like wallpapering; you are pasting an image onto the OpenGL Quad primitive.  Recall that GL_QUAD is specified by four vertices.  An image, or a texture,

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

What is seed fill, What is seed fill?  One way to fill a polygon is to ...

What is seed fill?  One way to fill a polygon is to begin from a given point (seed) known to be inside  the polygon and highlight outward from this point i.e. neighboring pixel

Udp datagram communication and tcp stream communication, Question: a) D...

Question: a) Datagram packet delivery and Virtual circuit packet delivery are two approaches to the delivery of packets by the network layer. Explain. b) What is the meaning

Time delay and busy flag method, 1. Using a time Delay Method The delay...

1. Using a time Delay Method The delay required between issuing each character to the LCD is about 5-10ms (it's simply known as DELAY). When programming an LCD, a long delay is

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