Dots.java
/* 
 * Program to paint 9 dots, of 4 different sizes and 4 different colors, 
 * that are symmetric with respect to the y-axis. 
 */

package npw;

import java.awt.Color;
import javax.swing.SwingUtilities;
import painter.SPainter;
import shapes.SCircle;

public class Dots {

    private void paintTheImage() {
        SPainter klee = new SPainter("Dots", 1000,1000);
        // three green dots with radius 50
        SCircle dots = new SCircle(50);
        klee.setColor(Color.GREEN);
        klee.mbk(100);
        klee.paint(dots);
        klee.moveToCenter();
        klee.mrt(400);
        klee.mfd(100);
        klee.paint(dots);
        klee.moveToCenter();
        klee.mlt(400);
        klee.mfd(100);
        klee.paint(dots);
        klee.moveToCenter();
        // 2 dark grey dots with radius 100
        dots.setRadius(100);
        klee.setColor(Color.DARK_GRAY);
        klee.mrt(200);
        klee.paint(dots);
        klee.mlt(400);
        klee.paint(dots);
        klee.moveToCenter();
        // 2 black dots with radius 35
        dots.setRadius(35);
        klee.setColor(Color.BLACK);
        klee.mfd(300);
        klee.mrt(250);
        klee.paint(dots);
        klee.moveToCenter();
        klee.mfd(300);
        klee.mlt(250);
        klee.paint(dots);
        klee.moveToCenter();
        // 2 light grey dots with radius 75
        dots.setRadius(75);
        klee.setColor(Color.LIGHT_GRAY);
        klee.mbk(300);
        klee.mrt(100);
        klee.paint(dots);
        klee.moveToCenter();
        klee.mbk(300);
        klee.mlt(100);
        klee.paint(dots);
        klee.moveToCenter();

    }

    //REQUIRED INFRASTRUCTURE

    public Dots() {
        paintTheImage();
    }

    public static void main(String[] args) {
        SwingUtilities.invokeLater(new Runnable() {
            public void run() {
                new Dots();
            }
        });
    }
}