Balloons.java
1    package npw;
2    
3    import java.awt.Color;
4    import java.util.Random;
5    import javax.swing.SwingUtilities;
6    import painter.SPainter;
7    import shapes.SCircle;
8    import shapes.SSquare;
9    
10   public class Balloons {
11   
12       public Balloons() {
13           paintTheImage();
14       }
15   
16       public static void main(String[] arg) {
17           SwingUtilities.invokeLater(new Runnable() {
18               public void run() {new Balloons();
19               }
20           });
21       }
22   
23       private void paintTheImage() {
24           SPainter painter = new SPainter("Balloons", 600, 600);
25           paintSky(painter);
26           int nrOfBalloons = 100;
27           paintBalloons(painter,nrOfBalloons);
28       }
29   
30       private void paintSky(SPainter painter) {
31           painter.setColor(Color.BLUE);
32           SSquare sky = new SSquare(2000);
33           painter.paint(sky);
34       }
35   
36       private void paintBalloons(SPainter painter, int nrBalloons) {
37           int i = 1;
38           while (i <= nrBalloons ) {
39               paintOneBalloon(painter);
40               i = i + 1;
41           }
42       }
43       private void paintOneBalloon(SPainter painter) {
44           Random rgen = new Random();
45           int rn = rgen.nextInt(3);
46           if ( rn == 0) {
47               painter.setColor(Color.RED);
48           } else if ( rn == 1 ) {
49               painter.setColor(Color.ORANGE);
50           } else if ( rn == 2 ) {
51               painter.setColor(Color.YELLOW);
52           }
53           painter.move();
54           int balloonRadius = 20;
55           SCircle balloon = new SCircle(balloonRadius);
56           painter.paint(balloon);
57           painter.setColor(Color.BLACK);
58           painter.draw(balloon);
59       }
60   }
61