91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

如何在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
张家口市| 新乡县| 东山县| 朝阳市| 桐乡市| 巴楚县| 康马县| 漯河市| 冀州市| 南川市| 丹阳市| 灌阳县| 晋中市| 夏邑县| 娱乐| 沛县| 远安县| 柞水县| 德令哈市| 丽水市| 修水县| 崇信县| 凉山| 松原市| 巴彦淖尔市| 东乡| 中宁县| 麻栗坡县| 栾城县| 定边县| 新宁县| 启东市| 尖扎县| 泸定县| 苏州市| 贡山| 江津市| 平顺县| 洪雅县| 林甸县| 彭阳县|