Problem written by Chris and Julia.
This program animates a square that moves until it is in the center of the screen. It starts on the left side.
public class GoCenter extends GraphicsProgram {
private static final int SIZE = 20;
private static final int DELAY = 100;
public void run() {
// Draw a square on the left of the screen.
GRect rect = new GRect(SIZE, SIZE);
double x = 0;
double y = (getHeight() - rect.getHeight()) / 2;
rect.setFilled(true);
add(rect, x, y);
// Move until the center
// rect.getX() returns the x coordinate of the rectangle
double maxX = (getWidth() - rect.getWidth()) /2;
while(rect.getX() < maxX) {
// move one pixel to the right
rect.move(1, 0);
// animation pause.
pause(DELAY);
}
}
}