1 /* 2 *Program to paint a blue dot in the context of the Nonrepresentational 3 * Painting World< NPW 4 */ 5 package npw; 6 7 import java.awt.Color; 8 import java.awt.geom.Point2D; 9 import javax.swing.SwingUtilities; 10 import painter.SPainter; 11 import shapes.SCircle; 12 13 14 public class Dots { 15 16 // THE SOLUTION TO THE BLUE DOT PROBLEM 17 private void paintTheImage() { 18 SPainter painter = new SPainter("Dots",1200,1200); 19 20 SCircle dot = new SCircle(25); 21 SCircle bob = new SCircle(50); 22 SCircle cob = new SCircle(75); 23 SCircle lob = new SCircle(100); 24 paintBlueCircle(painter, dot); 25 paintRedCircle(painter, bob); 26 paintGreenCircle(painter, cob); 27 paintPinkCircle(painter, lob); 28 29 } 30 31 private void paintBlueCircle(SPainter painter, SCircle dot) { 32 painter.mfd(300); 33 painter.setColor(Color.BLUE); 34 painter.paint(dot); 35 painter.moveToCenter(); 36 painter.setColor(Color.BLUE); 37 painter.paint(dot); 38 painter.moveToCenter(); 39 painter.mbk(300); 40 painter.setColor(Color.BLUE); 41 painter.paint(dot); 42 painter.moveToCenter(); 43 } 44 45 private void paintRedCircle(SPainter painter, SCircle bob) { 46 painter.mlt(300); 47 painter.setColor(Color.RED); 48 painter.paint(bob); 49 painter.moveToCenter(); 50 painter.mrt(300); 51 painter.setColor(Color.RED); 52 painter.paint(bob); 53 painter.moveToCenter(); 54 } 55 56 private void paintPinkCircle(SPainter painter, SCircle lob) { 57 painter.mbk(300); 58 painter.mrt(300); 59 painter.setColor(Color.PINK); 60 painter.paint(lob); 61 painter.moveToCenter(); 62 painter.mbk(300); 63 painter.mlt(300); 64 painter.setColor(Color.PINK); 65 painter.paint(lob); 66 painter.moveToCenter(); 67 68 } 69 70 private void paintGreenCircle(SPainter painter, SCircle cob) { 71 painter.mfd(300); 72 painter.mrt(300); 73 painter.setColor(Color.GREEN); 74 painter.paint(cob); 75 painter.moveToCenter(); 76 painter.mfd(300); 77 painter.mlt(300); 78 painter.paint(cob); 79 painter.moveToCenter(); 80 81 } 82 83 // REQUIRED INFRASTRUCTURE 84 85 public Dots() { 86 paintTheImage (); 87 } 88 89 public static void main (String [] args) { 90 SwingUtilities.invokeLater(new Runnable() { 91 public void run() { 92 new Dots(); 93 } 94 }); 95 } 96 } 97