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

ATM, The ATM will simulate a real world automated teller machine that suppo...

The ATM will simulate a real world automated teller machine that supports safe access to accounts from multiple concurrent clients.

Write a program that lets the user play an adventure game, Let the player (...

Let the player (denoted U in the diagram below) navigate around the board until she wins the game by finding the exit or is killed by a monster. A player begins the game with a sli

Lalr parser - xml table output, LALR Parser: Rule Table - Contains de...

LALR Parser: Rule Table - Contains definitions of production rules within the grammar. Attributes: Count - Number of production rules in the table Child items:

Get variable data, How do i get back data from a FOR loop in order to prin...

How do i get back data from a FOR loop in order to print them on screen?

Write a shell script to calculate gross salary, Write a shell script  (W.A...

Write a shell script  (W.A.S.S) to calculate gross salary. Program # Write a shell script  (W.A.S.S) to calculate gross salary. echo "Enter any Basic Salary"     #echo is

Write a document type definition for xml file, XML Publishing. Consider the...

XML Publishing. Consider the following relational data: Products: pid Name Price Description 323 gizmo

Pascal, Problem Solving 1. Write Pascal code that accepts as input the nam...

Problem Solving 1. Write Pascal code that accepts as input the names of the students, course work score and exam score for a unspecified number of students who have taken a subjec

Create a linux shell, Create a linux shell (in other words, write a C/C++ p...

Create a linux shell (in other words, write a C/C++ program) that will recursively prompt for input from the user. The shell should prompt as yourRollNumber-currentDirector

Shell script toconvert all lowercase to uppercase characters, Normal 0 ...

Normal 0 false false false EN-US X-NONE X-NONE MicrosoftInternetExplorer4

Program for connect 4 game on a general board, The classical connect-4 game...

The classical connect-4 game is played on a 67 board, it can in fact be played in any nrRowsnrCols board. In your implementation, the user will specify the number of rows nrRows an

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