Write a python program | Computer Science homework help

TASK 1:  Animated Sine Curve

Write a Python program one.py with PyOpenGL to display an animation of sine function y=Asin(x+B), satifying the following requirements:

  • The window application’s size is (600, 600), and its upper-left corner is at (250, 250) on the screen;
  • The window application’s title is Animated Sine Curve.
  • The ranges of x and y are [-4, 4] (x is in radians);
  • The amplitude A is a random float in [1, 2], and it is updated each time the window application restarts;
  • The phase shift B is a float; it is initialized as 0, and incremented by 0.01 each time the screen refreshes;
  • The two axes are drawn in white, with an arrow towards the positive direction at the end of each axis;
  • The sine curve is drawn in yellow.
  • Orthogonal projection is used in this task.

The following figure illustrates the expected window application.

TASK 2:  Clamped B-Spline

 Write a Python program two.py with PyOpenGL to display a clamped B-spline, satifying the following requirements:

  • The window application’s size is (550, 550), and its upper-left corner is at (150, 150) on the screen;
  • The window application’s title is Special B-Splines.
  • The program reads a text file named control-points.txt, including an x,y coordinate pair in each line as a control point, in the same folder;
  • Control points are drawn with size 4 in green.
  • Based on the control points, a clamped B-spline is drawn.
  • P(t)’s color, mixed by red and blue, depends on its curvature (R = curvature / 5, G = 0.0, B = 1 – curvature / 5);
  • Curvature is clipped by [0, 5].
  • Orthogonal projection is used in this task.

The following figure illustrates the expected window application, reading the sample control-points.txt provided.

TASK 3:  Hexagonal Pyramid

 Write a Python program three.py with PyOpenGL to display a 3D hexagonal pyramid, satifying the following requirements:

  • The window application’s size is (400, 400), and its upper-left corner is at (100, 100) on the screen;
  • The window application’s title is Hexagonal Pyramid.
  • The program reads a text file named pyramid-params.txt, including one line as x,y,z,H,R, in the same folder, where x, y and z are the coordinates of the top vertex v, H is the height, and R is the radius; we assume the top vertex v and the base centroid c are on the same vertical axis, and c is always under v; the distance between c and any base vertex vi is always R.
  • Based on the above information, a hexagonal pyramid is drawn.
  • All faces are randomly and differently colored, except for the base in white.
  • When the key R is pressed, the radis increases by 0.01 and the hexagonal pyramid is redrawn.
  • When the key H is pressed, the height decreases by 0.01 and the hexagonal pyramid is redrawn.
  • The hexagonal pyramid is static by default; When the key X, Y or Z is pressed, the hexagonal pyramid toggles between being static and rotating 1 degree/refresh along the corresponding axis (i.e., the key X corresponds to the x axis), taking c as the origin.
  • Perspective projection is used in this task (FoV is 90 degrees towards the y-axis; Camera looks at the origin and uses the y-axis direction as the up-vector).

The following figure illustrates the expected window application, reading the sample pyramid-params.txt provided.







Place your order
(550 words)

Approximate price: $22

Calculate the price of your order

550 words
We'll send you the first draft for approval by September 11, 2018 at 10:52 AM
Total price:
$26
The price is based on these factors:
Academic level
Number of pages
Urgency
Basic features
  • Free title page and bibliography
  • Unlimited revisions
  • Plagiarism-free guarantee
  • Money-back guarantee
  • 24/7 support
On-demand options
  • Writer’s samples
  • Part-by-part delivery
  • Overnight delivery
  • Copies of used sources
  • Expert Proofreading
Paper format
  • 275 words per page
  • 12 pt Arial/Times New Roman
  • Double line spacing
  • Any citation style (APA, MLA, Chicago/Turabian, Harvard)

Our guarantees

Delivering a high-quality product at a reasonable price is not enough anymore.
That’s why we have developed 5 beneficial guarantees that will make your experience with our service enjoyable, easy, and safe.

Money-back guarantee

You have to be 100% sure of the quality of your product to give a money-back guarantee. This describes us perfectly. Make sure that this guarantee is totally transparent.

Read more

Zero-plagiarism guarantee

Each paper is composed from scratch, according to your instructions. It is then checked by our plagiarism-detection software. There is no gap where plagiarism could squeeze in.

Read more

Free-revision policy

Thanks to our free revisions, there is no way for you to be unsatisfied. We will work on your paper until you are completely happy with the result.

Read more

Privacy policy

Your email is safe, as we store it according to international data protection rules. Your bank details are secure, as we use only reliable payment systems.

Read more

Fair-cooperation guarantee

By sending us your money, you buy the service we provide. Check out our terms and conditions if you prefer business talks to be laid out in official language.

Read more

Order your essay today and save 10% with the coupon code: best10