1 /* 2 *Program that paints 300 balloons each of radius 300 of 6 different colord 3 */ 4 package npw; 5 6 import painter.SPainter; 7 import shapes.SCircle; 8 import shapes.SSquare; 9 10 import javax.swing.*; 11 import java.awt.*; 12 import java.util.Random; 13 14 public class AlternativeBalloons { 15 //Required infrastructure 16 public AlternativeBalloons(){ 17 paintTheImage(); 18 } 19 public static void main(String[] args){ 20 SwingUtilities.invokeLater(new Runnable() { 21 public void run() { 22 new AlternativeBalloons(); 23 } 24 }); 25 } 26 //The painter doing its thing 27 private void paintTheImage(){ 28 SPainter painter = new SPainter("AltBalloons", 600,600); 29 paintSky(painter); //ask intelij to generate new stub 30 int nrOfBalloons = 300; 31 paintBalloons(painter,nrOfBalloons);//ask intelij to generate new stub 32 } 33 34 private void paintSky(SPainter painter) { 35 painter.setColor(Color.BLUE); 36 SSquare sky = new SSquare(2000); 37 painter.paint(sky); 38 } 39 40 private void paintBalloons(SPainter painter, int nrOfBalloons) { 41 int i = 1; 42 while (i <= nrOfBalloons ){ 43 paintOneBalloon(painter);//ask intelij to generate new stub 44 i = i + 1; 45 } 46 } 47 48 private void paintOneBalloon(SPainter painter) { 49 Random rgen = new Random(); 50 int rn = rgen.nextInt(6); 51 if ( rn == 1){ 52 painter.setColor(Color.RED); 53 }else if ( rn == 1 ){ 54 painter.setColor(Color.ORANGE); 55 }else { 56 painter.setRandomColor(); 57 } 58 painter.move(); 59 int balloonRadius = 30; 60 SCircle balloon = new SCircle(balloonRadius); 61 painter.paint(balloon); 62 painter.setColor(Color.BLACK); 63 painter.draw(balloon); 64 } 65 } 66 67