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