第25章 案例1拼图游戏

上传人:命****币 文档编号:110250719 上传时间:2019-10-29 格式:PPT 页数:23 大小:1.06MB
返回 下载 相关 举报
第25章 案例1拼图游戏_第1页
第1页 / 共23页
第25章 案例1拼图游戏_第2页
第2页 / 共23页
第25章 案例1拼图游戏_第3页
第3页 / 共23页
第25章 案例1拼图游戏_第4页
第4页 / 共23页
第25章 案例1拼图游戏_第5页
第5页 / 共23页
点击查看更多>>
资源描述

《第25章 案例1拼图游戏》由会员分享,可在线阅读,更多相关《第25章 案例1拼图游戏(23页珍藏版)》请在金锄头文库上搜索。

1、第25章“案例l:拼图游戏通过前面的学习,读者已经基本掌提了Java程序设计语言的语法基础、面向对象程序设计的概念及Swing图形界面程序的编程。木章通过一个拼图游戏程序的开发案例,详细讲解综合运用Swing组件和布局管理器进行程序慧覃布局响应事件处理的方法,以及应用程序的开发25.1软件简介拼图游戏是很常见而东很受欢迎的一种小游戏。所谓拼图游戏,是指将一个完整的图片分剩成若干个规则的小图片,然后将这些小图片随机地拼接在一起。玩家挖照原图,通过移动各个图片,最后重新拼接出正确的图片。25.1.1应用背景拼图游戏是老少皆宥的一个小游戏。在工作和学习之余,可以自己单独玩,也可以和家人一起玩,不但盎

2、智,而且可以达到放松身心的目的。现在计划开发一单机版拼图游戏,使用java语言,可以双击独立运行。25.1.2功能介绍拼国勒戏界面的效果如图所示。在国市边的小图片是供玟家参考的原图。左边芸网格的大图片为利姓打见的挂接图,御一个尔网格都是一个尔国片,在开姑湘戒时运些个图片是机乙无章的,加图所示,在图中有一个罡格是宏日的,玩家可以通过单击不其相临的阿格,即余于其上、下、在、有的4个罡技,将袋单击闹格中怡示仪少图片移动刺定目阜根范厉被单击的罡桃封变为空白,经迹这样反复地移动,要汀最终将图圭边所示的图片重新拮探成闸盯边所示原绍效果图25.2素材准备拼图游戏所需的素材比较简单,仅为需要拼接的图片,如图2

3、5-1所示,大小为400“300单位像素,拆分的小图片大小为100*100像素。对于图25-1中被拆分的小图,不需要另外准备,在内存中对图片进行截取和拆分即可。25.3算法设计要实现本游戏上述功能,关键考虚如下儿个问题如何加载和拆分图片、如何实现图片的随机排列、如何在程序中实现图片的移动。这实际上是算法的设计闰题。本节简要分析一下拼图游戏的算法设计和实现。25.3.1_加载和拆分图片将原始图片放在background目录下,使用javax.imageioImagelO类的read()方法,加载图片到内存中,保存到缓冲图像对象Bufferedimage中。25.3.2实现图片的随机排列在程序一开

4、始,拆分过后的图像应该是随机排列的。随机排列可以有两种方式:一是将图像顺序显示在按钮上,然后随机布局按钮;二是先将图像的顺序随机打乱,然后彗雾霆后的次序顺序显示任按健上】本案例中使用后一25.3.3实现图片的移动在游戏操作中,通过单击与空白网格相信的网格,就可以将该网格中显示的图片移动,那么就可以用一个按钮代表一个网格,然后让每个按钮显示一个小图片,最后将这些按钮添加到一个面板中,面板采用GridLayout网格布局,就可以实现如图所示的效果了。关键的要解决的是,加何实现单击图片按钮以后图片的移动。25.3.4参考图像的缩放在图中,右边的参考原始图像,是在内存中经过对原始图像的缩放以后,由JLabel标签对象显示的。要实现图像的缩放功能,利用javaawt.geom包中的AffineTransform类。

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 中学教育 > 教学课件 > 高中课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号