中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

如何在Java中對正方形進行縮放操作

小樊
82
2024-08-30 07:32:02
欄目: 編程語言

在Java中,可以使用Graphics2D類的scale()方法來對正方形進行縮放操作

import javax.swing.*;
import java.awt.*;

public class SquareScalingExample extends JFrame {
    public SquareScalingExample() {
        setTitle("Square Scaling Example");
        setSize(400, 400);
        setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    }

    @Override
    public void paint(Graphics g) {
        super.paint(g);

        Graphics2D g2d = (Graphics2D) g;

        // 設置縮放比例
        double scaleX = 2.0;
        double scaleY = 2.0;

        // 獲取畫布的寬度和高度
        int canvasWidth = getWidth();
        int canvasHeight = getHeight();

        // 計算正方形的大小和位置
        int squareSize = 100;
        int squareX = (canvasWidth - squareSize) / 2;
        int squareY = (canvasHeight - squareSize) / 2;

        // 繪制原始正方形
        g2d.setColor(Color.BLUE);
        g2d.fillRect(squareX, squareY, squareSize, squareSize);

        // 應用縮放
        g2d.scale(scaleX, scaleY);

        // 計算縮放后的正方形的位置
        int scaledSquareX = (int) (squareX / scaleX);
        int scaledSquareY = (int) (squareY / scaleY);

        // 繪制縮放后的正方形
        g2d.setColor(Color.RED);
        g2d.fillRect(scaledSquareX, scaledSquareY, squareSize, squareSize);
    }

    public static void main(String[] args) {
        SwingUtilities.invokeLater(() -> {
            new SquareScalingExample().setVisible(true);
        });
    }
}

這個示例將創建一個包含兩個正方形的窗口。第一個正方形是藍色的,表示原始大小。第二個正方形是紅色的,表示縮放后的大小。通過調整scaleX和scaleY變量的值,可以控制正方形的縮放比例。

0
任丘市| 汶上县| 灌云县| 黔江区| 龙山县| 定陶县| 临西县| 赤水市| 瑞金市| 商南县| 信阳市| 平定县| 建阳市| 渭南市| 娄烦县| 嘉黎县| 静海县| 孙吴县| 郓城县| 禹城市| 越西县| 年辖:市辖区| 毕节市| 安塞县| 江达县| 城固县| 南华县| 勐海县| 张家界市| 什邡市| 郑州市| 鄂托克前旗| 绥中县| 陇川县| 微山县| 灵武市| 曲阜市| 页游| 光泽县| 高州市| 新竹市|