1 package npw; 2 3 import painter.SPainter; 4 import shapes.SCircle; 5 import shapes.SRectangle; 6 7 import javax.swing.*; 8 import java.awt.*; 9 import java.awt.geom.Point2D.Double; 10 11 12 public class Dots { 13 14 private void drawCartesianPlane(SPainter painter, SRectangle lines) { 15 painter.setColor(Color.BLACK); 16 17 painter.draw(lines); 18 painter.moveToCenter(); 19 20 painter.tl(); 21 painter.draw(lines); 22 painter.moveToCenter(); 23 } 24 private void drawPositiveY(SPainter painter, SCircle circleMin, SCircle circleMed,SCircle circleMax) { 25 painter.setColor(Color.RED); 26 27 painter.setPosition(new Double(300,200)); 28 painter.paint(circleMin); 29 30 painter.setPosition(new Double(400,200)); 31 painter.paint(circleMin); 32 33 painter.setColor(Color.GREEN); 34 painter.setPosition(new Double(500,200)); 35 painter.paint(circleMed); 36 37 painter.setColor(Color.BLUE); 38 painter.setPosition(new Double(600,0)); 39 painter.paint(circleMax); 40 41 42 } 43 44 private void drawNegativeY(SPainter painter, SCircle circleMin, SCircle circleMed,SCircle circleMax) { 45 painter.setColor(Color.RED); 46 47 painter.setPosition(new Double(300,400)); 48 painter.paint(circleMin); 49 50 painter.setPosition(new Double(400,400)); 51 painter.paint(circleMin); 52 53 painter.setColor(Color.GREEN); 54 painter.setPosition(new Double(500,400)); 55 painter.paint(circleMed); 56 57 painter.setColor(Color.BLUE); 58 painter.setPosition(new Double(600,600)); 59 painter.paint(circleMax); 60 61 62 } 63 64 65 66 private void paintTheImage() { 67 SPainter painter = new SPainter("Dots",600,600); 68 SRectangle lines = new SRectangle(1, 600); 69 SCircle circleMin = new SCircle(25); 70 SCircle circleMed = new SCircle(50); 71 SCircle circleMax = new SCircle(75); 72 drawCartesianPlane(painter,lines); 73 drawPositiveY(painter, circleMin, circleMed,circleMax); 74 drawNegativeY(painter, circleMin, circleMed,circleMax); 75 } 76 77 78 79 80 // REQUIRED INFRASTRUCTURE 81 public Dots() { 82 paintTheImage(); 83 84 } 85 public static void main(String[] args) { 86 SwingUtilities.invokeLater(new Runnable() { //Static 87 public void run() { 88 new Dots(); 89 } 90 }); 91 }} 92