Stella.java
1    package npw;
2    
3    import java.awt.Color;
4    import java.util.Random;
5    import java.util.Scanner;
6    import javax.swing.JOptionPane;
7    
8    import painter.SPainter;
9    import shapes.SSquare;
10   
11   public class Stella {
12   
13       public static void main(String[] args) {
14           int numberOfSquares = getNumber("number of concentric squares");
15   
16           SPainter klee = new SPainter("Stella", 800, 800);
17           SSquare square = new SSquare(700);
18           Color color1 = randomColor();
19           Color color2 = randomColor();
20           double shrink = 700.0 / numberOfSquares;
21           int i = 1;
22           while (i < numberOfSquares) {
23               if (i % 2 == 1) {
24                   klee.setColor(color1);
25               } else {
26                   klee.setColor(color2);
27               }
28               i = i + 1;
29               square.shrink(shrink);
30               klee.paint(square);
31               klee.moveToCenter();
32           }
33       }
34   
35       private static Color randomColor() {
36           Random rgen = new Random();
37           int r = rgen.nextInt(200);
38           int g = rgen.nextInt(256);
39           int b = rgen.nextInt(150);
40           return new Color(r, b, g);
41       }
42   
43       private static int getNumber(String prompt) {
44           String nss = JOptionPane.showInputDialog(null, prompt + "?");
45           Scanner scanner = new Scanner(nss);
46           return scanner.nextInt();
47       }
48   }