Rotation and coordinate translation : Tranformation « 2D Graphics « Java Tutorial






import java.awt.Color;
import java.awt.Graphics;
import java.awt.Graphics2D;

import javax.swing.JFrame;
import javax.swing.JPanel;

public class Rotate extends JPanel {

  public void paint(Graphics g) {
    super.paint(g);
    Graphics2D g2d = (Graphics2D) g;
    g2d.setColor(new Color(150, 150, 150));
    g2d.fillRect(20, 20, 80, 50);
    g2d.translate(180, -150);
    g2d.rotate(Math.PI / 4);
    g2d.fillRect(20, 20, 80, 50);
  }

  public static void main(String[] args) {
    JFrame frame = new JFrame("Rotation");
    frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    frame.add(new Rotate());
    frame.setSize(300, 200);
    frame.setVisible(true);
  }
}








16.3.Tranformation
16.3.1.Transform LabTransform Lab
16.3.2.Coordinate Translation.
16.3.3.Rotation and coordinate translation
16.3.4.Rotate a line of character (String)
16.3.5.Scaling an object
16.3.6.Tranformation with AffineTransform.getScaleInstanceTranformation with AffineTransform.getScaleInstance
16.3.7.Tranformation with AffineTransform.getTranslateInstanceTranformation with AffineTransform.getTranslateInstance
16.3.8.Tranformation with AffineTransform.getShearInstanceTranformation with AffineTransform.getShearInstance
16.3.9.Calculate Rotation Transform with Math.PICalculate Rotation Transform with Math.PI
16.3.10.Rotating image using Java 2D AffineTransform class
16.3.11.Translate and rotate all objects
16.3.12.Move and scale graphical objects with a mouse on the panel
16.3.13.Rotates a shape about the specified coordinates.