Graphics2D: transform(AffineTransform Tx) : Graphics2D « java.awt « Java by API






Graphics2D: transform(AffineTransform Tx)

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);
    
  }
}

           
       








Related examples in the same category

1.Graphics2D: draw(Shape s)
2.Graphics2D: drawGlyphVector(GlyphVector g, float x, float y)
3.Graphics2D: drawString(String str, int x, int y)
4.Graphics2D: drawString(String str, int x, int y) (Unicode)
5.Graphics2D: fill(Shape s)
6.Graphics2D: getFontRenderContext()
7.Graphics2D: rotate(double theta)
8.Graphics2D: scale(double sx, double sy)
9.Graphics2D: setComposite(Composite comp)
10.Graphics2D: setPaint(Paint paint)
11.Graphics2D: setRenderingHints(Map hints)
12.Graphics2D: setRenderingHint(Key hintKey, Object hintValue)
13.Graphics2D: setStroke(Stroke s)
14.Graphics2D: translate(int x, int y)