/home/kchan2/NetBeansProjects/CS1/src/npw/AlternateBalloons.java |
1
2
3
4
5
6
7 package npw;
8
9 import java.awt.Color;
10 import java.util.Random;
11 import javax.swing.SwingUtilities;
12 import painter.SPainter;
13 import shapes.SCircle;
14 import shapes.SSquare;
15
16
17
18 @author
19
20 public class AlternateBalloons {
21
22
23
24 public AlternateBalloons(){
25 paintTheImage();
26 }
27
28 public static void main(String[] args) {
29 SwingUtilities.invokeLater(new Runnable(){
30 public void run(){
31 new AlternateBalloons();
32 }
33 });
34 }
35
36
37
38 Color color1 = randomColor();
39 Color color2 = randomColor();
40 Color color3 = randomColor();
41 Color color4 = randomColor();
42 Color color5 = randomColor();
43 Color color6 = randomColor();
44
45 private void paintTheImage(){
46 SPainter painter = new SPainter("Balloons",600,600);
47 paintSky(painter);
48 int nrOfBalloons = 300;
49 paintBalloons(painter,nrOfBalloons);
50
51 }
52
53 private void paintSky(SPainter painter) {
54 painter.setColor(Color.BLUE);
55 SSquare sky = new SSquare(2000);
56 painter.paint(sky);
57 }
58
59 private void paintBalloons(SPainter painter, int nrOfBalloons) {
60 int i = 1;
61 while ( i <= nrOfBalloons ) {
62 paintOneBalloon(painter);
63 i = i + 1;
64 }
65 }
66
67 private void paintOneBalloon(SPainter painter) {
68 Random rgen = new Random();
69 int rn = rgen.nextInt(6);
70 if (rn == 0 ) {
71 painter.setColor(color1);
72 } else if ( rn == 1 ) {
73 painter.setColor(color2);
74 } else if ( rn == 2 ) {
75 painter.setColor(color3);
76 } else if ( rn == 3 ) {
77 painter.setColor(color4);
78 } else if ( rn == 4 ) {
79 painter.setColor(color5);
80 } else if ( rn == 5 ) {
81 painter.setColor(color6);
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 private Color randomColor() {
92 int rv = (int)(Math.random()*256);
93 int gv = (int)(Math.random()*256);
94 int bv = (int)(Math.random()*256);
95 Color color = new Color(rv,gv,bv);
96 return color;
97 }
98
99 }
100