package npw; import shapes.SShape; import java.awt.Color; import javax.swing.SwingUtilities; import painter.SPainter; import shapes.SCircle; import shapes.SSquare; public class Dots { //THE SOLUTION TO THE BLUE DOT PROBLEM private void paintTheImage() { SPainter painter = new SPainter("Dot",600,600); SCircle dot = new SCircle(20); paintCircle1(painter, dot); paintCircle2(painter, dot); paintCircle3(painter, dot); paintCircle4(painter, dot); paintCircle5(painter, dot); paintCircle6(painter, dot); paintCircle7(painter, dot); paintCircle8(painter, dot); paintCircle9(painter, dot); } // Required Infrastructure private void paintCircle1(SPainter painter, SCircle dot) { painter.setColor(Color.blue); painter.paint(dot); } private void paintCircle2(SPainter painter, SCircle dot) { painter.setColor(Color.blue); painter.mlt(150); painter.paint(dot); painter.mrt(150); } private void paintCircle3(SPainter painter, SCircle dot) { painter.setColor(Color.yellow); dot.setRadius(10); painter.mfd(150); painter.mrt(150); painter.paint(dot); painter.mbk(150); painter.mlt(150); } private void paintCircle4(SPainter painter, SCircle dot) { painter.setColor(Color.yellow); dot.setRadius(10); painter.mfd(150); painter.mlt(150); painter.paint(dot); painter.mbk(150); painter.mrt(150); } private void paintCircle5(SPainter painter, SCircle dot) { painter.setColor(Color.cyan); dot.setRadius(30); painter.mbk(75); painter.mlt(100); painter.paint(dot); painter.mfd(75); painter.mrt(100); } private void paintCircle6(SPainter painter, SCircle dot) { painter.setColor(Color.cyan); dot.setRadius(30); painter.mbk(75); painter.mrt(100); painter.paint(dot); painter.mfd(75); painter.mlt(100); } private void paintCircle7(SPainter painter, SCircle dot) { painter.setColor(Color.lightGray); dot.setRadius(50); painter.mbk(200); painter.mlt(200); painter.paint(dot); painter.mfd(200); painter.mrt(200); } private void paintCircle8(SPainter painter, SCircle dot) { painter.setColor(Color.lightGray); dot.setRadius(50); painter.mbk(200); painter.mrt(200); painter.paint(dot); painter.mfd(200); painter.mlt(200); } private void paintCircle9(SPainter painter, SCircle dot) { painter.setColor(Color.blue); dot.setRadius(20); painter.mrt(150); painter.paint(dot); painter.mlt(150); } private Dots() { paintTheImage(); } public static void main(String[] args) { SwingUtilities.invokeLater(new Runnable() { public void run() { new Dots(); } }); } }