Gui for plotting functions, Computer Graphics

Assignment Help:

For this assignment you will write a GUI for plotting functions. The user will supply the de?nition of a function in the variable x, the range of x and y values to be plotted and the number of steps in the plot. The GUI will then display the function. The user can enter any number of functions. Each will be plotted in the chosen colour. The plot information can also be changed - i.e. the x and y ranges and the number of steps. All the functions can then be redrawn using the new setup.

One way to plot a function is to construct a sequence

< (x1, y1), (x2, y2), . . . , (xn, yn) >

where x1 is the smallest value of x, xn is the largest value of x, n is the number of steps, each yi is the result of applying the function to xi and all the xi are equally spaced. The lines from (xi, yi) to (xi+1, yi+1) are then drawn to produce an approximation to the function. The larger the number of steps, the better the approximation.

Typically though, the sequence is not really constructed. All that is needed is the pairs of adjacent points so that a line can be drawn between them. The assignment support ?le de?nes an iterator that generates the required sequence.

Below is an example of plotting the function x2 from -5 to 5 in 6 steps. First a line from (-5, 25) to (-3, 9) is drawn followed by the line from (-3, 9) to (-1, 1), followed by the line from (-1, 1) to (1, 1), followed by the line from (1, 1) to (3, 9), followed by the line from (3, 9) to (5, 25).

931_GUI for Plotting Functions.png

For the actual plotting you will be using a canvas widget. The canvas has a given width and height while the plotting parameters specify ranges for x and y. Therefore a conversion is required that map 'real world' coordinates (i.e. the x,y values) to screen (canvas) coordinates. Remember that in the 'real world' y values increase as you move up while on a canvas they decrease as you move up. The assignment support ?le de?nes a coordinates conversion class that does this job.

Assignment Tasks

For each class and method that you write you need to provide a suitable comment giving a description and where necessary the type and any preconditions. You should use the triple-quote commenting style.


Related Discussions:- Gui for plotting functions

Briefly explain how you could create the gun barrel effect, Question 1: ...

Question 1: (a) Describe what you understand by Rotoscoping in Graphic effects. Give details how Rotoscoping could be achieved in After Effects CS3. (b) Using one algorithm

Algorithms for basic line segment plotting, Algorithms for Basic Line Segme...

Algorithms for Basic Line Segment Plotting There are two important algorithms for basic line segment plotting-DDA algorithm and Bresenham algorithm.  Both the algorithms use th

Mathematical description of a perspective projection, Mathematical descript...

Mathematical description of a Perspective Projection A perspective transformation is found by prescribing a center of projection and a viewing plane. Let here assume that P(x

Projections - viewing transformation, Projections - Viewing Transformation ...

Projections - Viewing Transformation Specified 3-D object in a space, Projection can be explained as a mapping of 3-D object into 2-D viewing screen. Now, 2-D screen is termed

Resolution - display devices, Resolution - Display Devices On a display...

Resolution - Display Devices On a display device, the resolution means the maximum number of points that can be displayed simultaneously without an overlap in a row and number

Determine the transformation matrix for the reflection, Determine the trans...

Determine the transformation matrix for the reflection about the line y = x. Solution: The transformation for mirror reflection regarding to the line y = x, comprises the subs

List out the merits of plasma panel display, List out the merits of Plasma ...

List out the merits of Plasma panel display?  Merits  Refreshing is not needed Produce a very steady image free of Flicker Less bulky than a CRT. Demerits

Define octrees, Define Octrees?  Hierarchical tree structures called oc...

Define Octrees?  Hierarchical tree structures called octrees, are used to show solid objects in some graphics systems. Medical imaging and other applications that needs display

Explain vector data model with examples, Question 1 How does GIS differ fr...

Question 1 How does GIS differ from traditional Maps? Explain Question 2 Explain vector data model with examples Question 3 What is spatial analysis? explain

Application of computer aided design, Application of Computer Aided Design ...

Application of Computer Aided Design There are several CAD software applications. Several of them along with their respective vendors are listed here: CAD Applications

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