/home/akc/NetBeansProjects/CS1/src/npw/AlternateBalloons.java
 1 /*
 2  * Program that paints 300, of 6 "nameless" colors, balloons in a blue sky. 
 3  * It will feature commands.
 4  */
 5 package npw;
 6 
 7 import java.awt.Color;
 8 import java.util.Random;
 9 import javax.swing.SwingUtilities;
10 import painter.SPainter;
11 import shapes.SCircle;
12 import shapes.SSquare;
13 
14 /**
15  *
16  * @author akc
17  */
18 public class AlternateBalloons {
19 
20     // REQUIRED INFASTRUCTURE
21     public AlternateBalloons() {
22         paintTheImage();
23     }
24 
25     public static void main(String[] args) {
26         SwingUtilities.invokeLater(new Runnable() {
27             public void run() {
28                 new AlternateBalloons();
29             }
30         });
31     }
32 
33     // THE PAINTER DOING ITS THING
34     private void paintTheImage() {
35         SPainter painter = new SPainter("Balloons", 600, 600);
36         paintSky(painter); // ask Netbeans to generate the stub
37         int nrOfBalloons = 300;
38         paintBalloons(painter, nrOfBalloons);  // ask Netbeans to generate the stub
39     }
40 
41     private void paintSky(SPainter painter) {
42         painter.setColor(Color.BLUE);
43         SSquare sky = new SSquare(2000);
44         painter.paint(sky);
45     }
46 
47     private void paintBalloons(SPainter painter, int nrOfBalloons) {
48         int i = 1;
49         while (i <= nrOfBalloons) {
50             paintOneBalloon(painter);  // ask Netbeans to generate the stub
51             i = i + 1;
52         }
53     }
54 
55     private void paintOneBalloon(SPainter painter) {
56         Random rgen = new Random();
57         int rn = rgen.nextInt(6);
58         if (rn == 0) {
59             painter.setColor(new Color(25,120,43));
60         } else if (rn == 1) {
61             painter.setColor(new Color(130,23,45));
62         } else if (rn == 2) {
63             painter.setColor(new Color(72,49,149));
64         } else if (rn == 3) {
65             painter.setColor(new Color(110,50,110));
66         } else if (rn == 4) {
67             painter.setColor(new Color(25,120,120));
68         } else {
69             painter.setColor(new Color(200,120,43));
70         }
71         painter.move();
72         int balloonRadius = 30;
73         SCircle balloon = new SCircle(balloonRadius);
74         painter.paint(balloon);
75         painter.setColor(Color.BLACK);
76         painter.draw(balloon);
77     }
78 }