import java.awt.Color; /** * RandomPoint class is similar to a point with a color. It stores points, * it is used for the random drawing method. **/ public class RandomPoint { private Color c; private int x,y,width,height; /** Creates a default RandomPoint. **/ public RandomPoint(){} /** Creates a RandomPoint and takes in the screen sizes width and height. **/ public RandomPoint(int width, int height) { // takes in variables and then randomly generates a starting x // and y location this.width = width; this.height = height; x = (int)(Math.random()*width); y = (int)(Math.random()*height); } /** Figures out the next x location. **/ public int nextX() { // checks if its a negative of a positive number then generates a random // point up to 50 places away, if its out of bounds then it returns to // the bounds int sign = (int)(Math.random()*2); if(sign == 0) x = x + (int)(Math.random()*50+1); else x = x - (int)(Math.random()*50+1); if(x < 0) x = 0; if(x > width) x = width; return x; } /** Figures out the next y location. **/ public int nextY() { // checks if its a negative of a positive number then generates a random // point up to 50 places away, if its out of bounds then it returns to // the bounds int sign = (int)(Math.random()*2); if(sign == 0) y = y + (int)(Math.random()*200+1); else y = y - (int)(Math.random()*200+1); if(y < 0) y = 0; if(y > height) y = height; return y; } /** This method returns a random color. **/ public Color getColor() { return new Color((int)(Math.random()*256),(int)(Math.random()*256),(int)(Math.random()*256)); } /** This method returns the x value. **/ public int getX(){return x;} /** This method returns the y value. **/ public int getY(){return y;} }