1 /* 2 * Program to paint Dots in the context of the Nonrepresentational 3 * Painting World, NPW. 4 */ 5 6 package npw; 7 8 import painter.SPainter; 9 import shapes.SCircle; 10 11 import javax.swing.*; 12 import java.awt.*; 13 14 public class Dots { 15 //solution to the blue dot problem 16 private void paintTheImage(){ 17 SPainter painter = new SPainter("Dots",800,800); 18 19 SCircle dot = new SCircle(80); 20 paintBlueCircle(painter, dot); 21 paintRedCircle(painter, dot); 22 paintGreenCircles(painter, dot); 23 paintPinkCircles(painter, dot); 24 paintblackCircles(painter, dot); 25 } 26 27 private void paintblackCircles(SPainter painter, SCircle dot) { 28 painter.setColor(Color.gray); 29 painter.mlt(250); 30 dot.x2(); 31 painter.paint(dot); 32 painter.moveToCenter(); 33 painter.mlt(-250); 34 painter.paint(dot); 35 painter.moveToCenter(); 36 } 37 38 39 private void paintPinkCircles(SPainter painter, SCircle dot) { 40 painter.setColor(Color.pink); 41 painter.mbk(300); 42 dot.x2(); 43 painter.paint(dot); 44 painter.moveToCenter(); 45 painter.mfd( 300); 46 painter.paint(dot); 47 painter.moveToCenter(); 48 } 49 50 private void paintGreenCircles(SPainter painter, SCircle dot) { 51 painter.setColor(Color.green); 52 painter.mbk(120); 53 painter.mlt(120); 54 dot.s2(); 55 painter.paint(dot); 56 painter.moveToCenter(); 57 painter.mbk(120); 58 painter.mlt(-120); 59 painter.paint(dot); 60 painter.moveToCenter(); 61 62 } 63 64 65 private void paintRedCircle(SPainter painter, SCircle dot) { 66 painter.setColor(Color.red); 67 painter.mfd(120); 68 painter.mlt(120); 69 dot.s2(); 70 painter.paint(dot); 71 painter.moveToCenter(); 72 painter.mfd(120); 73 painter.mlt(-120); 74 painter.paint(dot); 75 painter.moveToCenter(); 76 77 } 78 79 private void paintBlueCircle(SPainter painter, SCircle dot) { 80 painter.setColor(Color.orange); 81 painter.paint(dot); 82 } 83 84 //required 9 dots 85 public Dots(){ 86 paintTheImage(); 87 } 88 public static void main(String[] args) { 89 SwingUtilities.invokeLater(new Runnable() { 90 public void run() { 91 new Dots(); 92 } 93 }); 94 } 95 } 96 97 98