Objektorientierte Programmierung WS 2013/2014 - Datei Ball.java
// // general purpose reusable bounding ball abstraction // // From Chapter 5 of // Understanging Object-Oriented Programming with Java // Written by Tim Budd // Published by Addison-Wesley Longman // // See ftp://ftp.cs.orst.edu/pub/budd/java/ReadMe.html // for further information // import java.awt.*; public class Ball { protected Rectangle location; protected double dx; protected double dy; protected Color color; public Ball (int x, int y, int r) { location = new Rectangle(x - r, y - r, 2 * r, 2 * r); dx = 0; dy = 0; } // functions that set attributes public void setColor (Color newColor) { color = newColor; } public void setMotion (double ndx, double ndy) { dx = ndx; dy = ndy; } // functions that access attributes of ball public int radius () { return location.width / 2; } public int x () { return location.x + radius(); } public int y () { return location.y + radius(); } public double xMotion () { return dx; } public double yMotion () { return dy; } public Rectangle region () { return location; } // functions that change attributes of ball public void moveTo (int x, int y) { location.setLocation(x, y); } public void move () { location.translate(( int ) dx, ( int ) dy); } public void paint (Graphics g) { g.setColor(color); g.fillOval(location.x, location.y, location.width, location.height); } }
Generiert mit Camelot | Probleme mit Camelot? | Geändert am: 26.11.2013