AlternateBalloons.java
1    package npw;
2    
3    import painter.SPainter;
4    import shapes.SCircle;
5    import shapes.SSquare;
6    
7    import javax.swing.*;
8    import java.awt.*;
9    import java.util.Random;
10   
11   public class AlternateBalloons {
12       public AlternateBalloons() {
13           paintTheImage();
14       }
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   
25       private void paintTheImage() {
26           SPainter painter = new SPainter(" Alternate Balloons" ,600, 600);
27           paintSky(painter); // ask intelliJ to generate the stub
28           int nrOfBalloons = 300;
29           paintBalloons(painter, nrOfBalloons); // ask intelliJ to generate the stub
30       }
31   
32       private void paintSky(SPainter painter) {
33           painter.setColor(Color.BLUE);
34           SSquare sky = new SSquare(2000);
35           painter.paint(sky);
36       }
37   
38       private void paintBalloons(SPainter painter, int nrOfBalloons) {
39           int i = 1;
40           while (i <= nrOfBalloons) {
41               paintOneBalloon(painter); // ask intelliJ to generate stub
42               i = i + 1;
43           }
44       }
45   
46       private void paintOneBalloon(SPainter painter) {
47           Random rgen = new Random();
48           int rn = rgen.nextInt(6);
49           if (rn == 0) {
50               painter.setColor(Color.RED);
51           } else if (rn == 1) {
52               painter.setColor(Color.ORANGE);
53           } else if ( rn == 2) {
54               painter.setColor(Color.pink);
55           } else if ( rn == 3) {
56               painter.setColor(Color.gray);
57           } else if ( rn == 4) {
58               painter.setColor(Color.green);
59           } else {
60               painter.setColor(Color.YELLOW);
61           }
62           painter.move();
63           int balloonRadius = 30;
64           SCircle balloon = new SCircle(balloonRadius);
65           painter.paint(balloon);
66           painter.setColor(Color.BLACK);
67           painter.draw(balloon);
68       }
69   
70   }
71