import java.awt.*;
import javax.swing.*;
import java.awt.geom.*;
import java.awt.event.*;
public class DrawTest{
public static void main(String args[]){
SketchFrame frame = new SketchFrame();
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.show();
}
}
class SketchFrame extends JFrame{
public SketchFrame(){
setTitle("Sketch");
setSize(DEFAULT_WIDTH,DEFAULT_HEIGHT);
SketchPanel panel = new SketchPanel();
Container contentPane = getContentPane();
contentPane.add(panel);
}
public static int DEFAULT_WIDTH = 300;
public static int DEFAULT_HEIGHT =200;
}
class SketchPanel extends JPanel{
public void paintComponent(Graphics g){
super.paintComponent(g);
Graphics2D g2 = (Graphics2D)g;
double leftX = 100;
double topY = 100;
double width = 100;
double height = 150;
Rectangle2D rect = new Rectangle2D.Double(leftX,topY,width,height);
g2.setColor(Color.red);
g2.draw(rect);
Ellipse2D ellipse = new Ellipse2D.Double();
ellipse.setFrame(rect);
g2.draw(ellipse);
g2.draw(new Line2D.Double(leftX,topY,leftX+width,topY+height));
double centerX = rect.getCenterX();
double centerY = rect.getCenterY();
double radius = 150;
Ellipse2D circle = new Ellipse2D.Double();
circle.setFrameFromCenter(centerX,centerY,
centerX+radius,centerY+radius);
g2.draw(circle);
}
}