Invention2.java
1    /* 
2     program to create a visually interesting canvas with an if and while statement that is different each time. 
3     */
4    
5    package npw;
6    
7    import painter.SPainter;
8    import shapes.SRectangle;
9    import java.awt.Color;
10   import javax.swing.SwingUtilities;
11   
12   public class Invention2 {
13   
14       private void paintTheImage() {
15           SPainter rina = new SPainter("Invention2", 400, 400);
16           SRectangle tang = new SRectangle(100,50);
17           rina.move();
18   
19           int i = 1;
20           while (i < 16) {
21               if (i == 1) {
22                   rina.setColor(randomColor());
23               } else if (i==2) {
24                   rina.setColor(Color.black);
25               } else if (i==3) {
26                   rina.setColor(randomColor());
27               } else if (i==4) {
28                   rina.setColor(Color.black);
29               } else if (i==5) {
30                   rina.setColor(randomColor());
31               } else if (i==6) {
32                   rina.setColor(Color.black);
33               } else if (i==7) {
34                   rina.setColor(randomColor());
35               } else if (i==8) {
36                   rina.setColor(Color.black);
37               } else if (i==9) {
38                   rina.setColor(randomColor());
39               } else if (i==10) {
40                   rina.setColor(Color.black);
41               } else if (i==11) {
42                   rina.setColor(randomColor());
43               } else if (i==12) {
44                   rina.setColor(Color.black);
45               } else if (i==13) {
46                   rina.setColor(randomColor());
47               } else if (i==14) {
48                   rina.setColor(Color.black);
49               } else if (i==15) {
50                   rina.setColor(randomColor());
51               }
52               rina.paint(tang);
53               rina.setColor(Color.white);
54               rina.draw(tang);
55               rina.move();
56               i = i + 1;
57           }
58       }
59   
60       private static Color randomColor() {
61           int rv = (int)(Math.random()*256);
62           int gv = (int)(Math.random()*256);
63           int bv = (int)(Math.random()*256);
64           return new Color(rv,gv,bv);
65       }
66   
67       public Invention2() {
68           paintTheImage();
69       }
70   
71       public static void main(String[] args) {
72           SwingUtilities.invokeLater(new Runnable() {
73               public void run() {
74                   new Invention2();
75               }
76           });
77       }
78   
79   }