Java Swing Tutorial - Java Graphics2D.scale(double sx, double sy)








Syntax

Graphics2D.scale(double sx, double sy) has the following syntax.

public abstract void scale(double sx,  double sy)

Example

In the following code shows how to use Graphics2D.scale(double sx, double sy) method.

import java.awt.Color;
import java.awt.Graphics;
import java.awt.Graphics2D;
//from   w w  w.  j  a  v a 2  s. c om
import javax.swing.JFrame;
import javax.swing.JPanel;

public class Main extends JPanel {
  public void paint(Graphics g) {
    g.fillRect(0, 0, 20, 20);

    Graphics2D g2 = (Graphics2D) g;

    g2.translate(50, 50);
    g2.rotate(30.0 * Math.PI / 180.0);

    g2.scale(2.0, 2.0);

    g.setColor(Color.red);

    g.fillRect(0, 0, 20, 20);
  }

  public static void main(String[] args) {
    JFrame frame = new JFrame();
    frame.add(new Main());
    frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    frame.setBounds(20, 20, 500, 500);
    frame.setVisible(true);
  }
}