Balloons.java
1    package npw;
2    // program that paints 100 red, orange and yellow balloons on a blue sky.
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       public Balloons() {
12           paintTheImage();
13       }
14       public static void main(String[] args) {
15       SwingUtilities.invokeLater(new Runnable() {
16           public void run() {
17               new Balloons();
18           }
19       });
20   }
21   
22   //painter going ham
23   
24       private void paintTheImage() {
25           SPainter painter = new SPainter("Balloons", 600 ,600);
26           paintSky(painter);
27           int nrOfBalloons = 100;
28           paintBalloons(painter,nrOfBalloons);
29       }
30   
31       private void paintBalloons(SPainter painter, int nrOfBalloons) {
32           int i = 1;while ( i <= nrOfBalloons) {
33               paintOneBalloon(painter);
34               i = i + 1;
35           }
36       }
37   
38       private void paintOneBalloon(SPainter painter) {
39           Random rgen = new Random();
40           int rn = rgen.nextInt(3);
41           if ( rn == 0 ) {
42               painter.setColor(Color.RED);
43           } else if ( rn == 1) {
44               painter.setColor(Color.ORANGE);
45           } else {
46               painter.setColor(Color.YELLOW);
47           }
48           painter.move();
49           int balloonRadius = 20;
50           SCircle balloon = new SCircle(balloonRadius);
51           painter.paint(balloon);
52           painter.setColor(Color.BLACK);
53           painter.draw(balloon);
54   
55       }
56   
57       private void paintSky(SPainter painter) {
58           painter.setColor(Color.BLUE);
59           SSquare Sky = new SSquare(2000);
60           painter.paint(Sky);
61       }
62   }