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