java applet assignment help, Programming Languages

Assignment Help:
Objectives: Create an applet, Use methods from the Graphics class , Use the Color class

General Instructions:
The java class that need to be imported into this assignment is below and it is called TrainApplet. Your jobs is to complete this class with the requirements below.
Create a new Eclipse project for this assignment and import the TrainApplet.java and train.html files into that project. Specification: Create an applet that has a train engine which moves across the window.
Complete the TrainApplet.java class by doing the following
Draw a train engine relative to a specific position so that the position of the train changes every time repaint is called. (The init method in the skeleton code that was provided sets up the animation for you. All you have to do is make sure the position changes each time the paint method is called.) Use several different methods from the Graphics class to draw the train. This means different shapes (rectangles, ovals, lines) as well as both fill and draw methods.
The position of the train should change by a small amount each time the paint method is called. When the train goes off one edge of the window, it should come back on the other edge.
Display some text in the applet window - a title, a quotation or whatever seems appropriate.
Add whatever else you want to the applet to make the picture interesting. The background should not be just the default color.
Use at least three colors in your applet. At least one of them should be a custom color. There are a number of sites on the web where you can find color samples with their RGB values.
Extra Credit (max +20)
Animate the wheels of your train engine.
Make your applet adjust appropriately when the window gets resized. For example, centered text should remain centered, the train should travel the entire width of the window, background graphics should adjust as needed.
Make the train follow a more complicated path.
Smooth out the wrapping - the train should not abruptly disappear when it reaches one side of the frame or abruptly reappear on the other side.
Documentation:

You should include javadoc comments describing the class in your code. Be sure to use the @author tag in the class comment.

You should include a plain text file called README (with no extension) that describes the overall design of your program and how to use it. See README.overview and README.example to get an idea of what is expected from your Project README files. Please also include your observations about the assignment and your experience with it.
Testing

After you upload your applet to onyx, run the applet using

appletviewer train.html

to make sure that it will run properly for the grader. Programs that will not compile or run receive an automatic zero score, so do not fail to test your program on onyx before submitting.
TrainApplet file:
/*
* TrainApplet.java
*
* COMPSCI125 Project 1: Train Applet
*/

importjava.awt.Color;
importjava.awt.Graphics;
importjava.awt.event.ActionEvent;
importjava.awt.event.ActionListener;
importjavax.swing.JApplet;
importjavax.swing.Timer;

/**
Animates a ____
@author your name
*/
public class TrainApplet extends JApplet {
//constant to regulate the frequency of Timer events
private final int DELAY = 500; //milliseconds
//variables for drawing / animating
privateint x, y;
privateint width, height;
privateintsquareSide;
privateintstepSize = 10;

/* This method draws on the applet''s Graphics context
*
* (non-Javadoc)
* @see java.awt.Container#paint(java.awt.Graphics)
*/
public void paint(Graphics canvas)
{
//let the JAppletdo its painting, first
super.paint(canvas);

int width = getWidth(); // applet width
int height = getHeight(); // applet height

//Fill the canvas with the background color
canvas.setColor(getBackground());
canvas.fillRect(0, 0, width, height);

//Calculate the new position
x = (x + stepSize) % width;

//Draw new square
canvas.setColor(Color.green);
canvas.fillRect(x, y, squareSide, squareSide);
}

/* Initialize necessary variables
* This method also sets up a Timer that will call
* paint() with frequency specified by the DELAY
* constant.
*
* (non-Javadoc)
* @see java.applet.Applet#init()
*/
public void init()
{
//Set square dimensions
squareSide = 50;
//Set the starting coordinates
x = 0;
y = getHeight()/2 - squareSide/2;

//DO NOT EDIT THE ActionListener / Timer CODE.
ActionListenertaskPerformer = new ActionListener() {
public void actionPerformed(ActionEventevt) {
repaint();
}
};
new Timer(DELAY, taskPerformer).start();
}
}

Related Discussions:- java applet assignment help

Get back data from database by user as search, i have a database having fie...

i have a database having field name title and comm. I want to search by name and get the all data remaining title and comm(comm is integer)

Output for the following instruction if CX=9087H AX=9090H, What will be the...

What will be the output for the following instruction if CX=9087H and AX=9090H? 1) BTR AH,2? 10010000=10010000 2) BTC CX,9?1001000010000111=1001000110000111 3) NEG AX?

Class registration, using UML 1- Identify primary classes 2- Scenario d...

using UML 1- Identify primary classes 2- Scenario description 3- Class diagrams 4- Sequence diagrams

MATLAB, Who can help with MATLAB?

Who can help with MATLAB?

Matlab, ,how to write matlab program for fast decoupled method

,how to write matlab program for fast decoupled method

Shopping Cart, Shopping Cart Purpose – Allows user to browse while keeping ...

Shopping Cart Purpose – Allows user to browse while keeping track of the items in which they will purchase at the end on the order page link and this will give a final price for al

Looping, You are required to develop a program that calculates the charges ...

You are required to develop a program that calculates the charges for DVD rentals, where current release cost RM3.50 and all others cost RM2.50. If a customer rents several DVDs, e

Explain the goto statement - computer programming, Explain the Goto Stateme...

Explain the Goto Statement - Computer Programming? The goto statement is employed to alter the normal sequence of program execution by transferring control to some other part o

Service oriented architectures in xml, question 1: In the opening lecture I...

question 1: In the opening lecture I spoke about general changes in business - flatter organizations, process orientation as opposed to functional silos, focus on supply chains, gr

Real distinct and 1 double eigenvalue with 1 eigenvector, Real Distinct and...

Real Distinct and 1 Double Eigenvalue with 1 Eigenvector From the real eigenvalue/vector pair, l 1 and ?h 1 , we find one solution, e l1 t ?h 1 By our work in the 2x

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