1 package npw; 2 3 import java.awt.Color; 4 import javax.swing.SwingUtilities; 5 import painter.SPainter; 6 import shapes.SSquare; 7 import shapes.SCircle; 8 public class KanizsaSquare { 9 private void paintTheImage() { 10 SPainter painter = new SPainter("Kanizsa Square", 400, 400); 11 SCircle dot = new SCircle(75); 12 paintBlueCircle(painter,dot); 13 paintRedCircle(painter,dot); 14 paintGreenCircles(painter,dot); 15 SSquare square = new SSquare(200); 16 paintWhiteSquare(painter,square); 17 18 } 19 public KanizsaSquare() { 20 paintTheImage(); 21 } 22 23 public static void main(String[] args) { 24 SwingUtilities.invokeLater(new Runnable() { 25 public void run() { 26 new KanizsaSquare(); 27 } 28 }); 29 } 30 private void paintBlueCircle(SPainter painter, SCircle dot) { 31 painter.setColor(Color.BLUE); 32 painter.mlt(100); 33 painter.mfd(100); 34 painter.paint(dot); 35 painter.mbk(100); 36 painter.mrt(100); 37 } 38 private void paintRedCircle(SPainter painter, SCircle dot) { 39 painter.setColor(Color.RED); 40 painter.mrt(100); 41 painter.mbk(100); 42 painter.paint(dot); 43 painter.mlt(100); 44 painter.mfd(100); 45 } 46 private void paintGreenCircles(SPainter painter, SCircle dot) { 47 painter.setColor(Color.GREEN); 48 painter.mfd(100); 49 painter.mrt(100); 50 painter.paint(dot); 51 painter.mlt(200); 52 painter.mbk(200); 53 painter.paint(dot); 54 painter.mfd(100); 55 painter.mrt(100); 56 } 57 private void paintWhiteSquare(SPainter painter, SSquare square) { 58 painter.setColor(Color.WHITE); 59 painter.paint(square); 60 } 61 62 63 } 64