Invention1.java
1    /* 
2     * This program will draw n numbers of circles and n number of squares using 2 different loops 
3     */
4    
5    package npw;
6    
7    import painter.SPainter;
8    import shapes.SCircle;
9    import shapes.SSquare;
10   import java.awt.*;
11   import java.util.Random;
12   
13   
14   public class Invention1 {
15       public static void main(String[] args) {
16   // Create the objects
17   
18           int canvaslength = 600;
19           int canvaswidth = 600;
20   
21           Color color1= randomColor();
22           Color color2= randomColor();
23   
24           SPainter painter = new SPainter("Invention1", canvaslength, canvaswidth);
25          // paintSquare(painter, 10);
26           SCircle circle = new SCircle(250);
27           painter.setBrushWidth(3);
28           SSquare square = circle.inscribingSquare();
29           paintCircle(painter, 10,circle,square, color1, color2);
30   
31   
32       }
33       private static void paintCircle(SPainter painter, int nrOfCircles,SCircle circle,SSquare square, Color color1, Color color2) {
34   
35           int i = 0;
36           while (i <= nrOfCircles) {
37               painter.setColor(Color.black);
38               paintOneCircle(painter,circle,nrOfCircles,square, color1, color2);
39               i = i + 1;
40           }
41       }
42       private static void paintOneCircle(SPainter painter, SCircle circle, int nrOfCircles,SSquare square, Color color1, Color color2 ) {
43   
44          // painter.moveToCenter();
45   
46           int i=0;
47           while(i<nrOfCircles) {
48               if (i<nrOfCircles/4){
49                   painter.setColor(color1);
50                   painter.draw(circle);
51                   painter.setColor(color2);
52                   painter.draw(square);
53                   circle.s2();
54                   square.s2();
55               }
56               else {
57                   painter.setColor(Color.black);
58                   painter.paint(circle);
59                   painter.setColor(Color.blue);
60                   painter.paint(square);
61                   circle.s2();
62                   square.s2();
63               }
64               i = i + 1;
65           }
66   
67   
68       }private static Color randomColor() {
69           Random rgen= new Random();
70           int r= rgen.nextInt(256);
71           int g= rgen.nextInt(256);
72           int b= rgen.nextInt(256);
73           return new Color(r,g,b);}
74   
75      private static void paintSquare(SPainter painter, int nrOfSquares) {
76           int side= 50;
77           int i = 0;
78           while (i < nrOfSquares) {
79               SSquare square= new SSquare(side);
80               paintOneSquare(painter, square);
81               i = i + 1;
82           }
83           painter.moveToCenter();
84       }
85       private static void paintOneSquare(SPainter painter, SSquare square) {
86           painter.setBrushWidth(5);
87           int i = 0;
88           int nrOfSquare = 10;
89           while (i < nrOfSquare) {
90               if (i < nrOfSquare / 2) {
91                   painter.setColor(Color.GREEN);
92                   painter.draw(square);
93                   square.s2();
94               } else {
95                   painter.setColor(Color.blue);
96                   painter.draw(square);
97                   square.s2();
98               }
99               i = i + 1;
100          }
101      }
102  }
103  
104  
105  
106