package npw; import painter.SPainter; import shapes.SCircle; import shapes.SSquare; import javax.swing.*; import java.awt.*; public class PumpItUp { // THE SOLUTION TO THE BLUE DOT PROBLEM private void paintTheImage() { SPainter painter = new SPainter("Pump It Up",600,600); SSquare square = new SSquare(150); paintYellowSquare(painter,square); paintRedSquares(painter,square); paintBlueSquares(painter,square); paintGraySquares(painter,square); } private void paintGraySquares(SPainter painter, SSquare square) { painter.setColor(Color.GRAY);; painter.mfd(square.side()); painter.paint(square); painter.moveToCenter(); painter.mlt(square.side()); painter.paint(square); painter.moveToCenter(); painter.mrt(square.side()); painter.paint(square); painter.moveToCenter(); painter.mbk(square.side()); painter.paint(square); painter.moveToCenter(); } private void paintBlueSquares(SPainter painter, SSquare square) { painter.setColor(Color.BLUE); painter.moveToCenter(); painter.mbk(square.side()); painter.mrt(square.side()); painter.paint(square); painter.moveToCenter(); painter.mbk(square.side()); painter.mlt(square.side()); painter.paint(square); painter.mfd(square.side()); painter.moveToCenter(); } private void paintRedSquares(SPainter painter, SSquare square) { painter.setColor(Color.RED); painter.mfd(square.side()); painter.mlt(square.side()); painter.paint(square); painter.moveToCenter(); painter.mfd(square.side()); painter.mrt(square.side()); painter.paint(square); } private void paintYellowSquare(SPainter painter, SSquare square) { painter.setColor(Color.yellow); painter.paint(square); } // REQUIRED INFRASTRUCTURE public PumpItUp() { paintTheImage(); } public static void main(String[] args) { SwingUtilities.invokeLater((new Runnable() { public void run() { new npw.PumpItUp(); } })); } }