AlternateBalloons.java
1    /* 
2     * Program that paints 300 balloons of 6 unnamed colors. 
3     * It will feature commands. 
4     */
5    
6    package npw;
7    
8    import painter.SPainter;
9    import shapes.SCircle;
10   import shapes.SSquare;
11   
12   import javax.swing.*;
13   import java.awt.*;
14   import java.util.Random;
15   
16   public class AlternateBalloons {
17   
18       //required infrastructure
19   
20       public AlternateBalloons() {
21           paintTheImage();
22       }
23   
24       public static void main(String[] args) {
25           SwingUtilities.invokeLater(new Runnable() {
26               public void run() {
27                   new AlternateBalloons();
28               }
29           });
30       }
31   
32       //painter doing its thing
33   
34       private void paintTheImage() {
35           SPainter painter = new SPainter("AlternateBalloons",600,600);
36           paintSky(painter); //ask IntelliJ to generate the stub
37           int nrOfBalloons = 300;
38           paintBalloons(painter,nrOfBalloons); //ask IntelliJ ti generate the stub
39       }
40       private void paintSky (SPainter painter) {
41           painter.setColor(Color.BLUE);
42           SSquare sky = new SSquare(2000);
43           painter.paint(sky);
44       }
45       private void paintBalloons(SPainter painter, int nrOfBalloons) {
46           int i = 1;
47           while(i <= nrOfBalloons) {
48               paintOneBalloon(painter); //ask Intellej to generate the stub
49               i = i+1;
50           }
51       }
52       private void paintOneBalloon(SPainter painter){
53           //Creating Colors
54           Color a = new Color(255, 192, 203);
55           Color b = new Color(64,169,98);
56           Color c = new Color(97,17,10);
57           Color d = new Color(22,254,253);
58           Color e = new Color(96,137,138);
59           Color f = new Color(250,1,13);
60   
61   
62           Random rgen = new Random();
63           int rn = rgen.nextInt(6);
64           if (rn == 0) {
65               painter.setColor(a);
66           }
67           else if (rn == 1) {
68               painter.setColor(b);
69           }
70           else if (rn == 2) {
71               painter.setColor(c);
72           }
73           else if (rn == 3) {
74               painter.setColor(d);
75           }
76           else if (rn == 4) {
77               painter.setColor(e);
78           }
79           else {
80               painter.setColor(f);
81           }
82   
83           painter.move();
84           int balloonRadius = 30;
85           SCircle balloon = new SCircle(balloonRadius);
86           painter.paint(balloon);
87           painter.setColor(Color.BLACK);
88           painter.draw(balloon);
89       }
90   
91   }
92