图片版坦克大战源代码之图片处理类(一)
import java.awt.Image;
import java.io.IOException;
import java.util.ArrayList;
/**
* 存储图片的类,把图片放到ArrayList里面,
* 之所以把图片存储起来,是为了避免频繁的文件读取工作
* 这个有三个子类,分别是代表我方坦克图片的MyImage类,
* 敌方坦克图片的EnemyImage类,爆炸图片类Explosion
* 类,本类实现了对加入图片,删除图片,获得图片,获得图片的个数,以及
* 删除所有图片的功能
*
* @author dell
*
*/
public class ImageUti {
private ArrayList<Image> image = new ArrayList<Image>();//存储图片的链表
/**
* 向链表里面添加图片
* @param imagePath注意图片的命名特点
* @param n不同种类的图片的数量
*/
public void addTankImage(String imagePath,int n){
for(int i=0;i<=n;i++){
try {
image.add(ImageUtil.getImage(imagePath + i + ".gif"));
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
/**
* 获得图片
* @param i
* @return
*/
public Image getImage(int i){
return image.get(i);
}
/**
* 在具体的子类初始化的时候就链表里添加图片
* @param imagePath图片路径
* @param n图片的数量
*/
public ImageUti(String imagePath,int n){
this.addTankImage(imagePath, n);
}
/**
* 删除指定的图片
* @param i
*/
public void remove(int i){
image.remove(i);
}
/**
* 获得图片的数量
* @return int 图片的数量
*/
public int size(){
return image.size();
}
/**
* 删除所有的图片
*/
public void removeAll(){
for(int i=0;i<size();i++){
remove(i);
}
}
}
*******************************************************************
package tankImage;
/**
* 我方坦克的图片
* @author dell
*
*/
public class MyImage extends ImageUti {
/**'
*
* @param imagePath
* @param n我方坦克的数量
*/
public MyImage(String imagePath,int n){
super(imagePath,n);
}
}
*****************************************************************************
package tankImage;
/**
* 敌方坦克的图片
* @author dell
*
*/
public class EnemyImage extends ImageUti{
/**
*
* @param imagePath
* @param n敌方坦克的数量
*/
public EnemyImage(String imagePath,int n){
super(imagePath,n);
}
}
***************************************************************************************
package tankImage;
/**
* 爆炸类图片
* @author dell
*
*/
public class Explosion extends ImageUti{
/**
*
* @param imagePath图片路径
* @param n图片数量
*/
public Explosion(String imagePath, int n) {
super(imagePath, n);
// TODO Auto-generated constructor stub
}
}
************************************************************************
相关文章
- 【数字图像处理】图像的平滑处理
- python异常处理(基础)
- Java实现 LeetCode 726 原子的数量(递归+HashMap处理)
- android使用LruCache对listview加载图片时候优化处理
- linux分享六:字符串处理
- python处理RGBA格式的透明图片的粘贴
- javascript:页面中有多处window.onload时的处理(chrome 105.0.5195.125)
- nginx lua处理图片
- 11贴图控件-06图片处理-imageeffect
- ABAP 泛型处理的overhead - generic programming
- Atitit 混合叠加俩张图片的处理 图像处理解决方案 javafx blend
- Atitit.java图片图像处理attilax总结 BufferedImage extends java.awt.Image获取图像像素点image.getRGB(i, lineIndex); 图片剪辑/AtiPlatf_cms/src/com/attilax/img/imgx.javacutImage图片处理titit 判断判断一张图片是否包含另一张小图片 atitit 图片去噪算法的原理与
- 【肝帝游戏】手把手教你python处理视频,越学越有趣,全部源码奉上,不信试试?
- 【NLP】自然语言处理的语料库与词库
- 【CSS】图片底部空白缝隙处理 ( 使用居中对齐 / 顶部对齐 / 底部对齐 | 将行内元素 / 行内块元素转为块级元素 )
- 【Android 热修复】运行 Tinker 官方示例 ( 处理 TINKER_ID 问题 | 编译 debug 包 | 修改 Gradle 脚本 | 生成 patch 包 | 热修复 )
- 8.5 filecmp--文件和目录比较处理
- 联机事务处理OLTP(on-line transaction processing)和联机分析处理OLAP(On-Line Analytical Processing)
- OpenCV这么简单为啥不学——1.13图片冷白皮(美白)处理