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

Introduction of 2-d and 3-d transformations, Introduction of 2-D and 3-D  ...

Introduction of 2-D and 3-D  Transformations In this, the subsequent things have been discussed in detail as given below: Different geometric transformations as transla

Scan conversion of line with the slope, Scan Conversion of Line with the sl...

Scan Conversion of Line with the slope (0 Currently the pixel positions beside the line path are determined through sampling at Unit x intervals that is, starting from the fi

Explain about the computer-aided design, Explain about the Computer-Aided D...

Explain about the Computer-Aided Design CAD is used in the design and development of new products in a several of applications both at home and on a commercial/industrial basis

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

Determine how many key frames does one minute animation film, How many key ...

How many key frames does one minute animation film order along with no duplications need if there are five in among for each pair of key frames?   Solution : One minute = 60 sec

Translation and shifting in spatial domain, Translation and shifting in Spa...

Translation and shifting in Spatial Domain A) The three images shown below were blurred using square masks of sizes n=23, 25, and 45, respectively. The vertical bars on the le

Image precision and object precision, Q.   What do you mean by image precis...

Q.   What do you mean by image precision and object precision? Describe z- buffer algorithm for visible surface detection. OR What do you mean by image precision and obj

Translate a triangle and scale it in coordinate direction, Translate a tria...

Translate a triangle and scale it in each coordinate direction Consider a triangle with vertices in 2D plane given by (0, 0), (1, 0) and (0,1) (called unit triangle).  Translat

Softwares for computer animation, Software for computer animation Wh...

Software for computer animation Whether you might have the excellent hardware in the world, but without a high-quality software package, your hardware can act nothing. There

Digital signal processing system for an analog signal, QUESTION (a) Dra...

QUESTION (a) Draw and explain the block diagram of a Digital Signal Processing System for an analog signal. (b) Draw the pictorial representation of the signals at each leve

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