1 2 package npw; 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 AlternateBalloons { 13 14 // REQUIRED CODE 15 public AlternateBalloons() { 16 paintTheImage(); 17 } 18 19 public static void main(String[] args) { 20 SwingUtilities.invokeLater(new Runnable() { 21 public void run() { 22 new AlternateBalloons(); 23 } 24 }); 25 } 26 27 // The Painter Doing The Thing 28 29 private void paintTheImage() { 30 SPainter painter = new SPainter("Balloons", 600, 600); 31 paintSky(painter); // ask IntelliJ to generate the stub 32 int nrOfBalloons = 300; 33 paintBalloons(painter, nrOfBalloons); // Generate the stub 34 } 35 36 private void paintBalloons(SPainter painter, int nrOfBalloons) { 37 int i = 1; 38 while ( i <= nrOfBalloons ) { 39 paintOneBalloon(painter); // ask IntelliJ to generate the stub 40 i = i + 1; 41 } 42 } 43 44 private void paintOneBalloon(SPainter painter) { 45 Random rgen = new Random(); 46 int rn = rgen.nextInt(6); 47 if (rn == 0) 48 { 49 painter.setColor(new Color(202,45,45)); 50 } 51 else if (rn == 1) 52 { 53 painter.setColor(new Color(48, 188, 48)); 54 } 55 else if (rn == 2) 56 { 57 painter.setColor(new Color(254, 66, 172)); 58 } 59 else if (rn == 3) 60 { 61 painter.setColor(new Color(255, 171, 0)); 62 } 63 else if (rn == 4) 64 { 65 painter.setColor(new Color(251, 255, 253)); 66 } 67 else if (rn == 5) 68 { 69 painter.setColor(new Color(94, 236, 255)); 70 } 71 else 72 { 73 painter.setColor(new Color(127, 61, 146)); 74 } 75 painter.move(); 76 int balloonRadius = 30; 77 SCircle balloon = new SCircle(balloonRadius); 78 painter.paint(balloon); 79 painter.setColor(Color.BLACK); 80 painter.draw(balloon); 81 } 82 83 private void paintSky(SPainter painter) { 84 painter.setColor(Color.BLUE); 85 painter.setColor(new Color(8, 38,66)); 86 SSquare sky = new SSquare(2000); 87 painter.paint(sky); 88 } 89 } 90 91