| import java.awt.Color;
 import java.awt.Container;
 import java.awt.Graphics;
 import java.awt.Graphics2D;
 import java.awt.RenderingHints;
 import java.awt.Shape;
 import java.awt.geom.AffineTransform;
 import java.awt.geom.Rectangle2D;
 
 import javax.swing.JComponent;
 import javax.swing.JFrame;
 
 public class MainClass{
 public static void main(String[] args) {
 JFrame jf = new JFrame("Demo");
 Container cp = jf.getContentPane();
 MyCanvas tl = new MyCanvas();
 cp.add(tl);
 jf.setSize(300, 200);
 jf.setVisible(true);
 }
 }
 
 class MyCanvas extends JComponent {
 Shape shape;
 
 public MyCanvas() {
 shape = create();
 }
 
 protected Shape create() {
 float cm = 72 / 2.54f;
 return new Rectangle2D.Float(cm, cm, 2 * cm, cm);
 }
 
 
 public void paint(Graphics g) {
 Graphics2D g2 = (Graphics2D) g;
 
 g2.setRenderingHint(RenderingHints.KEY_ANTIALIASING, RenderingHints.VALUE_ANTIALIAS_ON);
 
 g2.setPaint(Color.black);
 g2.draw(shape);
 
 AffineTransform at = AffineTransform.getTranslateInstance(75, 75);
 g2.transform(at);
 
 g2.setPaint(Color.red);
 g2.draw(shape);
 
 }
 }
 
 
 
 |