imagetest.java

来自「java learn PPT java learn PPT java learn」· Java 代码 · 共 60 行

JAVA
60
字号
     import java.applet.*;
     import java.awt.*;
     import java.awt.geom.*; 
     import java.util.*;
          
     public class ImageTest extends Applet 
     {  
          // 要绘制的Image数组
          private Image[] images;

          // 图像的文件名
          private final String[] filenames = { "simon.gif", "tj2gp.gif", "blade.gif" };

          public void init()
          {
               // 得到基准URL
               java.net.URL appletBaseURL = getCodeBase();

               // 为图像分配内存
               int n = filenames.length;
               images = new Image[n];
               for(int i = 0; i < n; i++)
               {
                    images[i] = getImage(appletBaseURL, filenames[i]);
               }
          }

          public void paint(Graphics g)
          {
               // 把传入的Graphics容器转换为一个可用的 Graphics2D 对象
               Graphics2D g2d = (Graphics2D)g;

               // 保存一个恒等变换                 
               final AffineTransform identity = new AffineTransform();

               // 用来变换图像
               AffineTransform at = new AffineTransform(); 
       
               Random r = new Random();

               int width = getSize().width;
               int height = getSize().height;

               int numImages = filenames.length;

               // 绘制 100 个图像,每一个应用一个随机的变换
               for(int i = 0; i < 100; i++)
               {
                    //清除变换
                    at.setTransform(identity);

                    // 随机设置平移和旋转
                    at.translate(r.nextInt()%width, r.nextInt()%height);
                    at.rotate(Math.toRadians(360*r.nextDouble()));

                    // 绘制图像           
                    g2d.drawImage(images[i%numImages], at, this);
               }
          }
     }    // ImageTest

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?