zl程序教程

您现在的位置是:首页 >  后端

当前栏目

《Java 2D游戏编程入门》—— 8.5 原型Bullet类

JAVA游戏编程入门 原型 2D 8.5
2023-09-11 14:17:36 时间

本节书摘来异步社区《Java 2D游戏编程入门》一书中的第8章,第8.5节,作者:【美】Timothy Wright(莱特),更多章节内容可以访问云栖社区“异步社区”公众号查看。

8.5 原型Bullet类

PrototypeBullet代码位于javagames.prototype包中,这是一个最简单的原型游戏源代码。除了绘制圆以便可以调整屏幕大小外,没有其他任何值得讨论的内容。

package javagames.prototype;

import java.awt.*;

import javagames.util.*;

public class PrototypeBullet {

 private Vector2f velocity;

 private Vector2f position;

 private Color color;

 private float radius;

 public PrototypeBullet( Vector2f position, float angle ) {

 this.position = position;

 velocity = Vector2f.polar( angle, 1.0f );

 radius = 0.006f;

 color = Color.GREEN;

 public Vector2f getPosition() {

 return position;

 public void draw( Graphics2D g, Matrix3x3f view ) {

 g.setColor( color );

 Vector2f topLeft = new Vector2f(

 position.x - radius, position.y + radius );

 topLeft = view.mul( topLeft );

 Vector2f bottomRight = new Vector2f(

 position.x + radius, position.y - radius );

 bottomRight = view.mul( bottomRight );

 int circleX = (int)topLeft.x;

 int circleY = (int)topLeft.y;

 int circleWidth = (int)(bottomRight.x - topLeft.x);

 int circleHeight = (int)(bottomRight.y - topLeft.y);

 g.fillOval(

 circleX, circleY, circleWidth, circleHeight

 public void update( float time ) {

 position = position.add( velocity.mul( time ) );

 }

JAVA线程——Thread 类 Thread 类我们可以理解为是 java 用于管理线程的一个类,里面封装了操作系统提供的线程管理这一方面的 API (Thread 是优化后的结果), Java 代码创建的每一个线程,可以理解为为 Thread 实例化的对象,Thread 对象用于描述线程的信息。
Java字符串(String类)(下) 前面小编给大家分享了Java语法的知识,今天和大家一起学习关于Java字符串的相关知识,字符串在校招笔试中也是常考的一类题目,也是非常的重要,希望看完这篇文章,能对你们有所帮助,fighting冲冲冲~~~
Java字符串(String类)(上) 前面小编给大家分享了Java语法的知识,今天和大家一起学习关于Java字符串的相关知识,字符串在校招笔试中也是常考的一类题目,也是非常的重要,希望看完这篇文章,能对你们有所帮助,fighting冲冲冲~~~
【Java|多线程与高并发】 使用Thread 类创建线程的5种方法&&如何查看程序中的线程 多线程编程主要是为了更好地解决并发编程这个问题,因为创建销毁调度一个进程开销比较大(消耗资源多和速度慢),进程之所以开销比较大,主要是在 资源的分配和回收上 而线程也被称为 轻量级进程 ,因此在解决并发编程这个问题上,线程的创建销毁调度的更快一些.
Java集合Collection类 数组在存储多个数据方面的缺点: 一旦初始化后,其长度就确定了 数组中提供的方法非常有限,对于添加、删除、插入数据等操作非常不便,同时效率不高。 获取数组中实际元素个数的需求,数组没有现成的属性或方法可用。 数组存储数据的特点:有序、可重复。对于无序、不可重复的需求不能满足。
Java实验报告四,研究生薪资管理,创建一个抽象交通工具Vehicle类,经理与员工工资等实验 1、实验题目:类的继承和方法重写 定义一个基类作为父类,再定义一个继承父类的子类,在子类中重写父类的方法,使用super关键字调用父类的方法,测试其功能。
异步社区 异步社区(www.epubit.com)是人民邮电出版社旗下IT专业图书旗舰社区,也是国内领先的IT专业图书社区,致力于优质学习内容的出版和分享,实现了纸书电子书的同步上架,于2015年8月上线运营。公众号【异步图书】,每日赠送异步新书。