/* * A program to paint Kanizsa square. */ package npw; import java.awt.Color; import javax.swing.SwingUtilities; import painter.SPainter; import shapes.SCircle; import shapes.SSquare; public class KanizsaSquare { private void paintTheImage() { SPainter painter = new SPainter("Kanizsa Square",400,400); SCircle dot = new SCircle(75); paintGreenCircles(painter, dot); paintBlueCircle(painter, dot); paintRedCircle(painter, dot); SSquare square = new SSquare(200); paintWhiteSquare(painter, square); } private void paintBlueCircle(SPainter painter, SCircle dot) { painter.setColor(Color.BLUE); painter.mfd(100); painter.mlt(100); painter.paint(dot); painter.mbk(100); painter.mrt(100); } private void paintRedCircle(SPainter painter, SCircle dot) { painter.setColor(Color.RED); painter.mbk(100); painter.mrt(100); painter.paint(dot); painter.mlt(100); painter.mfd(100); } private void paintWhiteSquare(SPainter painter, SSquare square) { painter.setColor(Color.WHITE); painter.paint(square); } private void paintGreenCircles(SPainter painter, SCircle dot) { painter.setColor(Color.GREEN); painter.mfd(100); painter.mrt(100); painter.paint(dot); painter.mbk(100); painter.mlt(100); painter.mbk(100);painter.mlt(100); painter.paint(dot); painter.mfd(100); painter.mrt(100); } // REQUIRED INFRASTRUCTURE public KanizsaSquare() { paintTheImage(); } public static void main(String[] args){ SwingUtilities.invokeLater(new Runnable() { public void run() { new KanizsaSquare(); } }); } }