1 /* 2 * Program to paint dots 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 13 public class Dots { 14 15 //THE SOLUTION TO THE DOTS PROBLEM 16 17 private void paintTheImage() { 18 SPainter painter = new SPainter("Dots", 600,600); 19 SCircle dot = new SCircle(50); 20 paintBlueCircles (painter, dot); 21 paintGreenCircles(painter, dot); 22 paintRedCircles(painter, dot); 23 paintYellowCircles(painter, dot); 24 } 25 26 private void paintYellowCircles(SPainter painter, SCircle dot) { 27 painter.setColor(Color.YELLOW); 28 painter.mbk (90); 29 painter.mlt(15); 30 dot.s5(); 31 painter.paint(dot); 32 painter.mrt(30); 33 painter.paint(dot); 34 painter.mlt(15); 35 painter.mbk(50); 36 painter.paint(dot); 37 painter.mfd(140); 38 dot.x5(); 39 } 40 41 private void paintRedCircles(SPainter painter, SCircle dot) { 42 painter.setColor(Color.RED); 43 painter.mbk(50); 44 painter.mlt(25); 45 dot.s3(); 46 painter.paint(dot); 47 painter.mrt(50); 48 painter.paint(dot); 49 painter.mlt(25); 50 painter.mfd(50); 51 dot.x3(); 52 } 53 54 private void paintGreenCircles(SPainter painter, SCircle dot) { 55 painter.setColor(Color.GREEN); 56 painter.mlt (50); 57 dot.s2(); 58 painter.paint(dot); 59 painter.mrt(100); 60 painter.paint(dot); 61 painter.mlt(50); 62 dot.x2(); 63 } 64 65 private void paintBlueCircles(SPainter painter, SCircle dot) { 66 painter.setColor(Color.BLUE); 67 painter.mfd(100); 68 painter.mlt(100); 69 painter.paint(dot); 70 painter.mrt(200); 71 painter.paint(dot); 72 painter.mlt(100); 73 painter.mbk(100); 74 } 75 76 //REQUIRED INFRASTRUCTURE 77 78 public Dots() { 79 paintTheImage(); 80 } 81 82 public static void main(String[] args) { 83 SwingUtilities.invokeLater(new Runnable() { 84 public void run() { 85 new Dots(); 86 } 87 }); 88 } 89 } 90 91