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