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; color = Color.blue; } // 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: 06.01.2014