Balloons.java
1    package NPW;
2    
3    
4    import painter.SPainter;
5    import shapes.SCircle;
6    import shapes.SSquare;
7    
8    import javax.swing.*;
9    import java.awt.*;
10   import java.util.Random;
11   
12   public class Balloons {
13   
14       public Balloons() {
15           paintTheImage();
16       }
17   
18       public static void main(String[] args) {
19           SwingUtilities.invokeLater(new Runnable() {
20               @Override
21               public void run() {
22                   new Balloons();
23               }
24           });
25       }
26   
27       private void paintTheImage() {
28           SPainter paint = new SPainter("Balloons", 600, 600);
29           paintSky(paint);
30           int NrOfBalloons = 100;
31           paintBalloons(paint, NrOfBalloons);
32       }
33   
34       private void paintSky(SPainter paint) {
35           paint.setColor(Color.blue);
36           SSquare sky = new SSquare(2000);
37           paint.paint(sky);
38       }
39   
40       private void paintBalloons(SPainter paint, int NrOfBalloons) {
41           int i = 1;
42           while (i <= NrOfBalloons) {
43               paintOneBalloon(paint);
44               i = i + 1;
45           }
46       }
47   
48       private void paintOneBalloon(SPainter paint) {
49           Random rgen = new Random();
50           int rn = rgen.nextInt(3);
51           if (rn == 0) {
52               paint.setColor(Color.red);
53           } else if (rn == 1) {
54               paint.setColor((Color.orange));
55           } else {
56               paint.setColor((Color.yellow));
57           }
58           paint.move();
59           int ballonRadius = 20;
60           SCircle balloon = new SCircle(ballonRadius);
61           paint.paint(balloon);
62           paint.setColor(Color.black);
63           paint.draw(balloon);
64       }
65   }
66