网络编程 | 站长之家 | 网页制作 | 图形图象 | 操作系统 | 冲浪宝典 | 软件教学 | 网络办公 | 邮件系统 | 网络安全 | 认证考试 | 系统进程
Firefox | IE | Maxthon | 迅雷 | 电驴 | BitComet | FlashGet | QQ | QQ空间 | Vista | 输入法 | Ghost | Word | Excel | wps | Powerpoint
asp | .net | php | jsp | Sql | c# | Ajax | xml | Dreamweaver | FrontPages | Javascript | css | photoshop | fireworks | Flash | Cad | Discuz!
当前位置 > 网站建设学院 > 网络编程 > Java
Tag:注入,存储过程,分页,安全,优化,xmlhttp,fso,jmail,application,session,防盗链,stream,无组件,组件,md5,乱码,缓存,加密,验证码,算法,cookies,ubb,正则表达式,水印,索引,日志,压缩,base64,url重写,上传,控件,Web.config,JDBC,函数,内存,PDF,迁移,结构,破解,编译,配置,进程,分词,IIS,Apache,Tomcat,phpmyadmin,Gzip,触发器,socket
网络编程:ASP教程,ASP.NET教程,PHP教程,JSP教程,C#教程,数据库,XML教程,Ajax,Java,Perl,Shell,VB教程,Delphi,C/C++教程,软件工程,J2EE/J2ME,移动开发
本月文章推荐
.Java语法规则.
.J2ee中的异常管理和错误追循....
.使用Hibernate进行对象的关系映射.
.JFC/Swing活学活用之JLabel文字魔.
.applet 的参数化 -- 对数组进行初.
.J2EE:美好的蓝图.
.字符.
.java学习笔记.
.Java中垃圾回收功能.
.Java性能调优工具JRockit Missio.
.J2ME综合-J2ME应用程序内存优化.
.java表达式中类型的自动提升.
.Web Service Appender 管理日志纪.
.类装入问题解密,第 2 部分: 基本.
.Eclipse开发J2ME手机程序之简介.
.关于用JAVA开发短信方面的知识.
.使用动态代理实现用AOP对数据库进.
.配置JDK / JAVA.
.天极网 十四种Java开发工具点评.
.JDOM Programming Part 2.

关于手机游戏中的炮弹轨迹—抛物线

发表日期:2008-1-5


关于手机游戏中的炮弹轨迹——抛物线
  在手机游戏的开发中经常会根据一条抛物线来模拟炮弹的轨迹。在已知炮弹的发射点,射程和射击高度的情况下,完全可由
抛物线方程来模拟出炮弹的运行轨迹,当然,这里的模拟只是理想状态下的,并没有把风力等因素考虑进去。
  根据炮弹的发射点(x1,y1),射程(cs)和射击高度(h)可得出抛物线的三个点:
  p1:(x1,y1)
  p2:(x2,y2)    x2=x1+cs/2, y2=y1+h
  p3:(x3,y3)    x3=x1+cs,   y3=y1
  根据这三个点可列出抛物线方程
  ax1^2+bx1+c=y1
  ax2^2+bx2+c=y2
  ax3^2+bx3+c=y3
  计算方程得到该抛物线的系数a,b,c
  得到a,b,c后,即可根据a,b,c计算出抛物线每点的轨迹。
  下面的例子将说明如何绘制轨迹:
 
  例子源码及图片下载

  我的MSN是zhagy_1981@hotmail.com,欢迎指出不足之处。

  例子运行效果如下:
关于手机游戏中的炮弹轨迹—抛物线(图一) 关于手机游戏中的炮弹轨迹—抛物线(图二) 关于手机游戏中的炮弹轨迹—抛物线(图三) 关于手机游戏中的炮弹轨迹—抛物线(图四) 关于手机游戏中的炮弹轨迹—抛物线(图五)  

例子canvas中的代码

import Java.io.IOException;
import javax.microedition.lcdui.Graphics;
import javax.microedition.lcdui.Image;
import javax.microedition.lcdui.game.GameCanvas;
import javax.microedition.lcdui.game.Sprite;
import javax.microedition.lcdui.game.TiledLayer;

public class MyCanvas extends GameCanvas implements Runnable
{
 //小船的位置
 int x,y;
 //小船精灵
 Sprite ship;
 //地图
 TiledLayer background;
 //图片
 Image ship_IMG, sea_IMG, bullet_IMG;
 //炮弹
 Bullets bullets;
 public MyCanvas()
 {
  super(true);
  //初始化船的位置
  x = 10;
  y = 60;
  try
  {
   ship_IMG = Image.createImage("/ship.png");
   sea_IMG = Image.createImage("/sea.png");
   bullet_IMG = Image.createImage("/bullet.png");
  }
  catch (IOException e)
  {
   e.printStackTrace();
  }
  //初始化炮弹
  bullets = new Bullets(bullet_IMG);
  //初始化小船
  ship = new Sprite(ship_IMG, 24, 30);
  ship.setPosition(x, y);
  //初始化地图
  background = new TiledLayer(20, 6, sea_IMG, 32, 32);

上一篇:通过Push信息来自动启动JAVA移动应用程序 人气:912
下一篇:SWT/JFace开发入门指南之搭建开发环境 人气:825
浏览全部Java的内容 Dreamweaver插件下载 网页广告代码 祝你圣诞节快乐 2009年新年快乐