KanizaSquare.java
1    package npw;
2    
3    import painter.SPainter;
4    import shapes.SCircle;
5    import shapes.SSquare;
6    import javax.swing.*;
7    import java.awt.*;
8    
9    public class  KanizaSquare {
10       private void paintTheImage() {
11           SPainter painter = new SPainter("KanizsaSquare",400,400);
12   
13           SCircle dot = new SCircle(75);
14           paintBlueCircle(painter, dot);
15           paintRedCircle(painter, dot);
16           paintGreenCircles(painter, dot);
17   
18           SSquare square = new SSquare(200);
19           paintWhiteSquare(painter, square);
20       }
21   
22       private void paintBlueCircle(SPainter painter, SCircle dot) {
23           painter.setColor((Color.blue));
24           painter.mfd(100);
25           painter.mlt(100);
26           painter.paint(dot);
27   
28       }
29   
30       private void paintRedCircle(SPainter painter, SCircle dot) {
31           painter.setColor(Color.red);
32           painter.mbk(200);
33           painter.mrt(200);
34           painter.paint(dot);
35       }
36   
37       private void paintWhiteSquare(SPainter painter, SSquare square) {
38           painter.setColor(Color.white);
39           painter.moveToCenter();
40           painter.paint(square);
41   
42       }
43   
44       private void paintGreenCircles(SPainter painter, SCircle dot) {
45           painter.setColor(Color.green);
46           painter.mbk(5);
47           painter.mlt(200);
48           painter.paint(dot);
49           painter.setColor(Color.green);
50           painter.mfd(200);
51           painter.mrt(190);
52           painter.paint(dot);
53   
54   
55   
56   
57       }
58   
59   
60       // REQUIRED INFRASTRUCTURE
61       public KanizaSquare() {
62           paintTheImage();
63       }
64       public static void main(String[] args) {
65           SwingUtilities.invokeLater(new Runnable() {
66               public void run() {
67                   new KanizaSquare();
68               }
69           });
70       }
71   
72   }