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