Balloons.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 Balloons {
12       public Balloons(){
13           paintTheImage();
14   
15       }
16   
17       public static void main(String[] args) {
18           SwingUtilities.invokeLater(new Runnable() {
19               public void run() {
20                   new Balloons();
21               }
22           });
23       }
24   
25       private void paintTheImage() {
26           SPainter painter = new SPainter("Balloons", 600, 600);
27           paintSky(painter);
28           int nrOfBalloons = 100;
29           paintballoons(painter, nrOfBalloons);
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);
42               i = i + 1;
43           }
44       }
45   
46       private void paintOneBalloon(SPainter painter) {
47           Random rgen = new Random();
48           int rn = rgen.nextInt(3);
49           if(rn == 0){
50               painter.setColor(Color.red);
51           }else if(rn == 1){
52               painter.setColor(Color.orange);
53           }else {
54               painter.setColor(Color.yellow);
55           }
56           painter.move();
57           int balloonRadius = 20;
58           SCircle balloon = new SCircle(balloonRadius);
59           painter.paint(balloon);
60           painter.setColor(Color.black);
61           painter.draw(balloon);
62       }
63   }