/* * Program that paints 300 random balloons in a blue sky. * It will feature commands. */ package npw; import java.awt.Color; import java.util.Random; import javax.swing.SwingUtilities; import painter.SPainter; import shapes.SCircle; import shapes.SSquare; public class AlternateBalloons { // Required Infrastructure public AlternateBalloons(){ paintTheImage(); } public static void main(String[] args){ SwingUtilities.invokeLater(new Runnable(){ public void run() { new AlternateBalloons(); } }); } // THE PAINTER DOING ITS THING private void paintTheImage(){ SPainter painter = new SPainter("AlternateBalloons", 600, 600); paintSky(painter); // ask IntelliJ to generate the stub; int nrOfBalloons = 300; paintBalloons(painter, nrOfBalloons); // ask IntelliJ to generate the stub } private void paintSky(SPainter painter){ painter.setColor(Color.BLUE); SSquare sky = new SSquare(2000); painter.paint(sky); } private void paintBalloons(SPainter painter, int nrOfBalloons){ int rv1 = (int)(Math.random() * 256); int gv1 = (int)(Math.random() * 256); int bv1 = (int)(Math.random() * 256); int i = 1; while (i <= nrOfBalloons){ paintOneBalloon(painter); // ask IntelliJ to generate the stub i = i + 1; } } private void paintOneBalloon(SPainter painter){ Random rgen = new Random(); int rn = rgen.nextInt(5); if (rn == 0) { painter.setColor(Color1()); } else if (rn == 1) { painter.setColor(Color2()); } else if (rn == 2) { painter.setColor(Color3()); } else if (rn == 3) { painter.setColor(Color4()); } else if (rn == 4) { painter.setColor(Color5()); } painter.move(); int balloonRadius = 30; SCircle balloon = new SCircle(balloonRadius); painter.paint(balloon); painter.setColor(Color.BLACK); painter.draw(balloon); } private static Color Color1() { int rv = 220; int gv = 235; int bv = 89; return new Color(rv,gv,bv); } private static Color Color2() { int rv = 161; int gv = 230; int bv = 175; return new Color(rv,gv,bv); } private static Color Color3() { int rv = 197; int gv = 205; int bv = 198; return new Color(rv,gv,bv); } private static Color Color4() { int rv = 250; int gv = 162; int bv = 33; return new Color(rv,gv,bv); } private static Color Color5() { int rv = 185; int gv = 242; int bv = 250; return new Color(rv,gv,bv); } }