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

Role in education and training, Role in Education and Training:- A multime...

Role in Education and Training:- A multimedia presentation is an important way to introduce new concepts or described a new technology. Individuals determine it easy to understand

Film recorders - graphics hardware, Film Recorders - graphics hardware ...

Film Recorders - graphics hardware It is a graphical output device for transferring digital images to photographic films. The easiest film recorders classically work through

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

Word perfect graphic, WPG: It is word perfect graphic file that is used vi...

WPG: It is word perfect graphic file that is used via Word Perfect. It first came out with the release of word perfect 5.0. Such files can include bitmaps, line arts and vector gr

Web-based services, Web-based Services: Commonly utilized software is: ...

Web-based Services: Commonly utilized software is: Protected Area Archive characteristics: Image display, roam, zoom and Image enhancement. Simple image processing.

Relation between 2-d euclidean system and homogeneous system, Relation betw...

Relation between 2-D Euclidean system and Homogeneous coordinate system Suppose that P(x,y) be any point in 2-D Euclidean system. In HCS, we add a third coordinate to the poin

What are the different ways of specifying spline curve, What are the differ...

What are the different ways of specifying spline curve?  Using a set of boundary conditions that are imposed on the spline. Using the state matrix that characteristics

Geometric tables - polygon tables, Geometric tables - Polygon Tables ...

Geometric tables - Polygon Tables 1) Vertex table: Keep vertices' coordinates values in the object. 2) Edge table: Keep pointers back in to the vertex table for identif

Animation and games - cad and cam, Animation and Games - CAD and CAM I...

Animation and Games - CAD and CAM In our childhood, we all have seen that the flip books of cricketers that came free with some soft drink and where some pictures of similar p

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