Java动画编程基础第四部分

使用图象:
现在,我们将重写paintFrame()来使图象动起来。这也就带来一些
问题,图象往往相当大,被一点点调入,将图象全部画出将花费很多时间,尤其
是通过一个较慢的连接,这也就是为什么drawImage带四个参数的原因,其中
第四个参数为一个ImageObserver对象。通过调用getImage()得到图象。

在屏幕上移动一幅图象:
world.gif作为背景,car.gif作为移动物体,且被绘制了两次,造成
一个两辆车比赛的场景。

Image world;
Image car;

public void init() {
String str = getParameter("fps");
int fps = (str != null) ? Integer.parseInt(str) : 10;
delay = (fps > 0) ? (1000 / fps) : 100;

world = getImage(getCodeBase(), "world.gif");
car = getImage(getCodeBase(), "car.gif");
}

public void paint(Graphics g) {
update(g);
}

public void paintFrame(Graphics g) {
Dimension d = size();
int w = world.getWidth(this);
int h = world.getHeight(this);

if ((w > 0) && (h > 0)) {
g.drawImage(world, (d.width - w)/2, (d.height - h)/2,
this);
}

w = car.getWIdth(this);
h = car.getHeight(this);

if ((w > 0) && (h > 0)) {
w += d.width;
g.drawImage(car, d.width - ((frame * 5) % w),
(d.height - h)/3, this);
g.drawImage(car, d.width - ((frame * 7) % w),
(d.height - h)/2, this);
}
}

显示一系列图象:
通过每一帧显示一幅图象来创建动画。我们仍用双缓冲的方法减小
闪烁。原因是我们显示的每一幅图象有一部分是透明的,因此需要在显示下
一幅前擦除当前的,如果不使用双缓冲的技术将导致闪烁。

Image frames[];
public void init() {
String str = getParameter("fps");
int fps = (str != null) ? Integer.parseInt(str) : 10;
delay = (fps > 0) ? (1000 / fps) : 100;

frames = new Image[10];
for (int i = 0; i < 10; i++) {
frames[i] = getImage(getCodeBase(), "duke/T" + i +
".gif");
}
}

public void paint(Graphics g) {
update(g);
}

public void paintFrame(Graphics g) {
g.drawImage(frames[frame % 10], 0, 0, null);
}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
Java网络编程第四版)》是一本经典的Java网络编程领域的教材。本书通过系统、全面地介绍了Java网络编程的相关概念和技术,为开发人员提供了深入理解和实践网络编程基础。 本书主要内容包括:网络基础知识,如网络协议、套接字、HTTP等;Java网络编程的基本概念和技术,如TCP/IP协议、UDP协议、Socket编程等;Java网络编程的高级特性,如IO多路复用、非阻塞IO、分布式编程等;网络编程的安全性和性能优化,如SSL、数据压缩、Socket选项等;以及一些实际应用场景的案例分析等。 本书的特点有以下几个方面: 1. 系统性:本书从网络基础知识入手,逐步介绍了Java网络编程的方方面面,帮助读者建立起完整的网络编程知识体系。 2. 实践性:本书通过大量的实例和案例,以及对常见问题的解答,帮助读者巩固所学知识,培养实际应用网络编程的能力。 3. 全面性:本书不仅涵盖了基础的网络编程技术,还介绍了一些高级特性和实际应用场景,让读者能够更全面地理解和掌握网络编程。 4. 更新性:作为第四版,本书对于Java网络编程的最新发展进行了更新和补充,能够帮助读者跟上网络编程领域的最新动态。 总之,《Java网络编程第四版)》是一本权威、全面、实践性强的网络编程教材,适合想要深入学习和应用Java网络编程的开发人员阅读。无论是初学者还是有一定经验的开发人员,都能从本书中获得很多有价值的知识和经验。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

wxyxl

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值