Dots.java
1    /* 
2     * Program to make a bunch of dots 
3     */
4    
5    package npw;
6    
7    import painter.SPainter;
8    import shapes.SCircle;
9    
10   import javax.swing.*;
11   import java.awt.*;
12   
13   public class Dots {
14       //SOLUTION TO THE DOT PROBLEM
15       private void paintTheImage() {
16           SPainter beep = new SPainter("Dots", 1200, 400);
17           SCircle dop = new SCircle(100);
18   
19           paintRedDot(beep,dop);
20           paintGreenDot(beep,dop);
21           paintBlueDot(beep,dop);
22           paintBlackDot(beep,dop);
23       }
24   
25       private void paintBlackDot(SPainter beep, SCircle dop) {
26           //set circle size and color
27           beep.setColor(Color.BLACK);
28           dop.s7();
29           //circle #2
30           beep.mlt(4*dop.perimeter());
31           beep.paint(dop);
32           beep.moveToCenter();
33           //circle #8
34           beep.mrt(4*dop.perimeter());
35           beep.paint(dop);
36           beep.moveToCenter();
37           //circle #1
38           beep.mlt(5*dop.perimeter());
39           beep.paint(dop);
40           beep.moveToCenter();
41           //circle #9
42           beep.mrt(5*dop.perimeter());
43           beep.paint(dop);
44           beep.moveToCenter();
45           //reset size
46           dop.x7();
47   
48       }
49   
50       private void paintBlueDot(SPainter beep, SCircle dop) {
51           //set circle size and color
52           beep.setColor(Color.BLUE);
53           dop.s3();
54           //circle #3
55           beep.mlt(1.2*dop.perimeter());
56           beep.paint(dop);
57           beep.moveToCenter();
58           //circle #7
59           beep.mrt(1.2*dop.perimeter());
60           beep.paint(dop);
61           beep.moveToCenter();
62           //reset size
63           dop.x3();
64       }
65   
66       private void paintGreenDot(SPainter beep, SCircle dop) {
67           //set circle size and color
68           beep.setColor(Color.GREEN);
69           dop.s2();
70           //circle #4
71           beep.mlt(0.5*dop.perimeter());
72           beep.paint(dop);
73           beep.moveToCenter();
74           //circle #6
75           beep.mrt(0.5*dop.perimeter());
76           beep.paint(dop);
77           beep.moveToCenter();
78           //reset size
79           dop.x2();
80       }
81   
82       private void paintRedDot(SPainter beep, SCircle dop) {
83           //circle #5
84           beep.setColor(Color.RED);
85           beep.paint(dop);
86       }
87   
88       public Dots() {
89           paintTheImage();
90       }
91   
92       public static void main(String[] args) {
93           SwingUtilities.invokeLater(new Runnable() {
94               public void run() {
95                   new Dots();
96               }
97           });
98       }
99   }
100