Dots.java
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