⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 getclipimage.java

📁 1) 在实践中理解游戏地图的含义 2) 地图的编辑制作 3) 地图数据的运用 4) 地图的碰撞检测
💻 JAVA
字号:
package tankgame611;

import java.awt.*;
import java.awt.image.CropImageFilter;
import java.awt.image.FilteredImageSource;
import java.awt.image.ImageProducer;

public class GetClipImage {
  public static Image[][] getImages(Image imgSource,
                                    int rows,
                                    int cols,
                                    int cutwidth,
                                    int cutheight) {
    Image img[][] = new Image[rows][cols];
    ImageProducer Source;
    CropImageFilter CutImage;

    Source = imgSource.getSource();
    for (int c = 0; c < cols; c++) {
      for (int r = 0; r < rows; r++) {
        CutImage = new CropImageFilter(c * cutwidth, r * cutheight, cutwidth,
                                       cutheight);
        img[r][c] = Toolkit.getDefaultToolkit().createImage(new
            FilteredImageSource(Source, CutImage)
        );
      }
    }
    return img;
  }

  public static Image[] getImages(Image imgSource,
                                  int cols,
                                  int cutwidth,
                                  int cutheight) {
    Image img[] = new Image[cols];
    ImageProducer Source;
    CropImageFilter CutImage;

    Source = imgSource.getSource();
    for (int c = 0; c < cols; c++) {
        CutImage = new CropImageFilter(c * cutwidth, 0,
                                       cutwidth, cutheight);
        img[c] = Toolkit.getDefaultToolkit().createImage(new
            FilteredImageSource(Source, CutImage)
        );
    }
    return img;
  }

  public static Image[] getMapImages(Image imgSource,
                                 int rows,
                                 int cols,
                                 int cutwidth,
                                 int cutheight) {
   Image img[] = new Image[rows*cols];
   ImageProducer Source;
   CropImageFilter CutImage;
   Source = imgSource.getSource();
   for (int i = 0; i < rows; i++) {
     for(int k = 0; k< cols; k++){
       CutImage = new CropImageFilter(k * cutwidth,
                                      i * cutheight,
                                      cutwidth,
                                      cutheight);
       img[i*cols+k] = Toolkit.getDefaultToolkit().createImage(new
           FilteredImageSource(Source, CutImage)
           );
     }
   }
   return img;
 }

}

⌨️ 快捷键说明

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