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

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

Transformation for 3-d reflection, Transformation for 3-D Reflection F...

Transformation for 3-D Reflection For 3-Dimensions reflections, we should to know the reference plane, which is a plane about that reflection is to be considered. Remember tha

Painting and drawing, Painting and Drawing While we talk about graphic...

Painting and Drawing While we talk about graphics, we mean pictures can be either photographs or illustrations. If you want to acquire graphics into a Web page or multimedia r

Define the term avatars- animation, Define the term Avatars- Animation ...

Define the term Avatars- Animation Avatars are another instance of animation. These are frequently used to represent people either in 3-D (as used in computer games) and in 2-D

Pcs or personal computers really - hardware for animation, PCs or Personal ...

PCs or Personal Computers Really - Hardware for Animation  these are really versatile machines that have been around for years. PCs are the favorite of many computer users, due

#, normal vector

normal vector

Assumption for digital differential analyzer algorithm, Assumption regardin...

Assumption regarding to the Digital Differential Analyzer Algorithm The line generation by DDA is discussed merely for the first Quadrant, whether the line lies in the other q

What is a dot size and interdot distance, What is a dot size and interdot d...

What is a dot size and interdot distance? Dot size may be explained as the diameter of a single dot on the devices output. Dot size is also known as the Spot size.  Interdo

Benefits of computer simulation - computer aided design, Benefits of Comput...

Benefits of Computer Simulation The benefit of Simulation is: even for simply solvable linear systems: a uniform model execution technique can be utilized to resolve a large v

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