package xmp_gui;

import java.awt.BasicStroke;
import java.awt.Color;
import java.awt.Graphics;
import java.awt.Graphics2D;
import java.awt.Shape;
import java.awt.geom.Ellipse2D;

import javax.swing.Icon;
import javax.swing.JLabel;

public class MyCircle extends JLabel {
	/**
	 * 
	 */
	private static final long serialVersionUID = 5609503787488955854L;
	final static BasicStroke thick = new BasicStroke(3.0f);
	private double xcenter;
	private double ycenter;
	private double diameter;

	public MyCircle() {
		super();
		xcenter=40;
		ycenter=50;
		diameter=50;
		setText("Circle at (" + xcenter + "," + ycenter + ") diameter=" + diameter);
		setVerticalAlignment(BOTTOM);
	}
	
	@Override
	public void paintComponent(Graphics g) {
		super.paintComponent(g);
		// System.out.println("Graphics object is " + g.getClass().getName()); 
		Graphics2D g2 = (Graphics2D) g;
		g2.setColor(new Color(200,10,10));
		g2.setStroke(thick);
		g2.draw((Shape)(new Ellipse2D.Double(xcenter,ycenter,diameter,diameter)));
	}
	
	public void moveCenter(double x,double y) {
		xcenter+=x;
		ycenter+=y;
		setText("Circle at (" + xcenter + "," + ycenter + ") diameter=" + diameter);
		repaint();
	}
	
	public void grow(double factor) {
		diameter*=factor;
		setText("Circle at (" + xcenter + "," + ycenter + ") diameter=" + diameter);
		repaint();
	}
}
