1 package npw; 2 3 import painter.SPainter; 4 import shapes.SSquare; 5 import javax.swing.*; 6 import java.awt.*; 7 import java.util.Scanner; 8 9 public class Stella { 10 public static void main(String[] args) { 11 SwingUtilities.invokeLater(new Runnable() { 12 public void run() { 13 new Stella(); 14 } 15 }); 16 } 17 public Stella(){ 18 paintTheImage(); 19 } 20 21 private void paintTheImage(){ 22 int nrOfSquares = getNumber("Number of Squares"); 23 SPainter painter = new SPainter("Stella", 800,800); 24 int side = 700; 25 26 paintThePicture(side, nrOfSquares, painter); 27 } 28 29 private static int getNumber(String prompt){ 30 String nss = JOptionPane.showInputDialog(null, prompt + "?"); 31 Scanner scanner = new Scanner(nss); 32 return scanner.nextInt(); 33 } 34 private void paintThePicture(int side, int nrOfSquares, SPainter painter) { 35 int i = side; 36 Color color1 = randomColor(); 37 Color color2 = randomColor(); 38 while (i > 0) { 39 painter.setColor(color1); 40 SSquare square = new SSquare(i); 41 painter.paint(square); 42 i = i - (side/nrOfSquares); 43 painter.setColor(color2); 44 SSquare square1 = new SSquare(i); 45 painter.paint(square1); 46 i = i - (side / nrOfSquares); 47 } 48 } 49 50 private static Color randomColor(){ 51 int rv = (int)(Math.random() * 215); 52 int gv = (int) (Math.random() * 215); 53 int bv = (int) (Math.random() * 215); 54 return new Color(rv, gv, bv); 55 } 56 57 } 58 59 60