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

Lisp and Prolog, Is there one can help me in the language Lisp and Prolog

Is there one can help me in the language Lisp and Prolog

Selfcare project - strut frame work, Selfcare Project:   Technology U...

Selfcare Project:   Technology Used Strut Frame work, WAS 5.1, WPS 6.0, DB2, AJAX, Eclipse, Rational Application Developer 6 and  DB2 Selfcare is a big umbrella under whic

Calculate the total price to purchase all the components req, Calculate the...

Calculate the total price to purchase all the components required to build a state-of-the-art gaming computer from components available on the internet. Before attempting this exer

Linux assignment , Hi how can I upload my hw to you experts?

Hi how can I upload my hw to you experts?

Program that takes integer array of 8 elements, Write a program that takes ...

Write a program that takes integer array of 8 elements from user and find the smallest element among them using pointers

Count the total number of records in data table, Normal 0 false...

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

Python: returning one dimensional list from strings , How to build one dime...

How to build one dimensional list from string and build string from a list? Suppose input string is: STACKOVERFLOW then the output list should be outputList = [S,T,A,C,K,O,V,E,R,F

Advantages of asp.net mvc framework, Advantages of asp.net mvc framework ...

Advantages of asp.net mvc framework MVC is a conventional style design that many designers are acquainted with. Some kinds of Web programs will advantage from the MVC structur

Need help for crowdsporting website development, CrowdSporting Website Deve...

CrowdSporting Website Development I want an advanced web developer to spend 1-2 days coding our newly designed website. It will be a single page scrolling site, fully designed a

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