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