Dots.java
1    package npw;
2    
3    import java.awt.Color;
4    import javax.swing.SwingUtilities;
5    import painter.SPainter;
6    import shapes.SCircle;
7    
8    public class Dots {
9        //THE SOLUTION TO THE DOTS PROBLEM
10       private void paintTheImage() {
11           SPainter painter = new SPainter("Dots", 600, 600);
12           SCircle dot = new SCircle(50);
13           paintCircle(painter, dot);
14           paintCircle2(painter, dot);
15           paintCircle3(painter, dot);
16           paintCircle4(painter, dot);
17           paintCircle5(painter, dot);
18   
19       }
20   
21       //Required Infrastructure
22       private void paintCircle(SPainter painter, SCircle dot) {
23           painter.setColor(Color.RED);
24           painter.paint(dot);
25       }
26   
27       private void paintCircle2(SPainter painter, SCircle dot) {
28           painter.setColor(Color.BLUE);
29           painter.mrt(200);
30           painter.paint(dot);
31           painter.mlt(400);
32           painter.paint(dot);
33           painter.moveToCenter();
34       }
35   
36       private void paintCircle3(SPainter painter, SCircle dot) {
37           painter.setColor(Color.RED);
38           painter.mbk(150);
39           painter.mrt(110);
40           dot.x2();
41           painter.paint(dot);
42           painter.mlt(220);
43           painter.paint(dot);
44           painter.moveToCenter();
45       }
46   
47       private void paintCircle4(SPainter painter, SCircle dot) {
48           painter.setColor(Color.MAGENTA);
49           painter.mfd(200);
50           painter.mrt(120);
51           dot.s3();
52           painter.paint(dot);
53           painter.mlt(240);
54           painter.paint(dot);
55           painter.moveToCenter();
56       }
57   
58       private void paintCircle5(SPainter painter, SCircle dot) {
59           painter.setColor(Color.GREEN);
60           painter.mfd(100);
61           painter.mrt(80);
62           dot.x2();
63           painter.paint(dot);
64           painter.mlt(160);
65           painter.paint(dot);
66           painter.moveToCenter();
67       }
68   
69       public Dots() {
70           paintTheImage();
71       }
72   
73       public static void main(String[] args) {
74           SwingUtilities.invokeLater(new Runnable() {
75               public void run() {
76                   new Dots();
77               }
78           });
79       }
80   }