1 /* 2 * Program to paint a blue dot in the context of the 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 import shapes.SSquare; 13 14 public class Dots { 15 // THE SOLUTION TO THE BLUE DOT PROBLEM 16 17 private void paintingCode() { 18 SPainter painter = new SPainter("Blue Dot", 800, 800); 19 20 SCircle dot = new SCircle(50); 21 painter.setColor(Color.GREEN); 22 painter.paint(dot); 23 24 paintPinkCircle1(painter, dot); 25 paintGreenCircle1(painter, dot); 26 paintPinkCircle2(painter, dot); 27 paintCyanCircle1(painter, dot); 28 paintYellowCircle1(painter, dot); 29 paintCyanCircle2(painter, dot); 30 paintYellowCircle2(painter, dot); 31 paintPinkCircle3(painter, dot); 32 33 34 } 35 36 // REQUIRED INFRASTRUCTURE 37 38 public Dots() { 39 paintingCode(); 40 } 41 42 public static void main(String[] args) { 43 SwingUtilities.invokeLater(new Runnable() { 44 public void run() { 45 new Dots(); 46 } 47 }); 48 } 49 private void paintPinkCircle1(SPainter painter, SCircle dot) { 50 painter.setColor(Color.GREEN); 51 painter.mbk(140); 52 painter.paint(dot); 53 painter.mfd(140); 54 } 55 56 private void paintGreenCircle1(SPainter painter, SCircle dot) { 57 painter.setColor(Color.YELLOW); 58 dot.x2(); 59 painter.mlt(280); 60 painter.mfd(120); 61 painter.paint(dot); 62 painter.mrt(280); 63 painter.mbk(120); 64 } 65 66 private void paintPinkCircle2(SPainter painter, SCircle dot) { 67 painter.setColor(Color.YELLOW); 68 painter.mrt(280); 69 painter.mfd(120); 70 painter.paint(dot); 71 painter.mlt(280); 72 painter.mbk(120); 73 dot.s2(); 74 } 75 76 private void paintCyanCircle1(SPainter painter, SCircle dot) { 77 painter.setColor(Color.CYAN); 78 dot.x3(); 79 painter.mlt(200); 80 painter.mbk(242); 81 painter.paint(dot); 82 painter.mrt(200); 83 painter.mfd(242); 84 } 85 86 private void paintYellowCircle1(SPainter painter, SCircle dot) { 87 painter.setColor(Color.CYAN); 88 painter.mrt(200); 89 painter.mbk(242); 90 painter.paint(dot); 91 painter.mlt(200); 92 painter.mfd(242); 93 } 94 95 private void paintCyanCircle2(SPainter painter, SCircle dot) { 96 painter.setColor(Color.CYAN); 97 dot.s2(); 98 painter.mfd(200); 99 painter.paint(dot); 100 painter.mbk(200); 101 } 102 103 private void paintYellowCircle2(SPainter painter, SCircle dot) { 104 painter.setColor(Color.PINK); 105 painter.mfd(300); 106 painter.mlt(230); 107 painter.paint(dot); 108 painter.mbk(300); 109 painter.mrt(230); 110 } 111 112 private void paintPinkCircle3(SPainter painter, SCircle dot) { 113 painter.setColor(Color.PINK); 114 painter.mfd(300); 115 painter.mrt(230); 116 painter.paint(dot); 117 } 118 }