WEB开发网
开发学院WEB开发Jsp 介绍NEC扩展API 阅读

介绍NEC扩展API

 2008-01-05 08:50:14 来源:WEB开发网   
核心提示:■ 1. 引言在上讲中,我们对网络的相关功能进行了解说,介绍NEC扩展API,截止上讲以前的讲座,我们讲述的都是关于MIDP的java相关技术的内容,static NxGraphics getNxGraphics(javax.microedition.lcdui.Graphics g)取得NxGraphics对象,下面

■ 1. 引言

 在上讲中,我们对网络的相关功能进行了解说。截止上讲以前的讲座,我们讲述的都是关于MIDP的java相关技术的内容,本讲将收尾,介绍NEC扩展API。

■ 2. NEC扩展

 NEC扩展API中有如下的类。

 类    AudioClip  处理声音数据类。已在第五讲解说。  AudioListener  Audio事务监听器。已在第五讲解说。  ImageEffector  颜色变换类。将在本讲解说。  ImageMap  模拟PCG类。因为能轻松的把多种画面分配在格子里,所以能很轻易的制作出背景和版面(ImageMap)。不在本讲解说。  Media  取得媒体数据类。已在第五讲解说。  NxCanvas  NEC扩展canvas,支持多重按键。将在本讲解说。  NxGraphics  NEC扩展Graphics。描画SPRite、ImageMap。将在本讲解说。  PhoneControl  控制震动、逆光类。不在本讲解说。  Sprite  Sprite类。将在本讲解说。  SpriteSet  治理Sprite类。将在本讲解说。

关于上表的ImageEffector、NxCanvas、NxGraphics、Sprite、SpriteSet,我们将按顺序展开介绍。

 2.1. 扩展图形类

 NxGraphics 类是Graphics 的扩展类。下面介绍可以实现的Sprite、ImageMap的描画以及矩形区域的复制。NxGraphics 类定义了以下方法。

void copyArea(int sx, int sy, int width, int height, int dx, int dy)

 把Canvas描画的矩形区域复制后描画。利用此功能能够把描画过一次的东西复制下来进行描画,因此当描画相同内容的拷贝时,可以简化步骤。

void drawImageMap(ImageMap map, int x, int y)

 对将多种画面分配在格子里的ImageMap进行描画。

void drawSpriteSet(SpriteSet sprites)

 描画Sprite。后面有Sprite的相关介绍。

static NxGraphics getNxGraphics(javax.microedition.lcdui.Graphics g)

 取得NxGraphics对象。

 下面展示的是使用copyArea方法的范例。该范例使用copyArea对移动球的一部分进行复制。

import java.util.Timer;
import java.util.TimerTask;

import javax.microedition.lcdui.Canvas;
import javax.microedition.lcdui.Graphics;
import javax.microedition.lcdui.Image;

import com.nec.graphics.NxGraphics;

/**
* copyArea范例动画canvas
*/
public class CopyAreaMovingBallCanvas extends Canvas {

 private int x; //球的x坐标
 private Image img;
 private Timer timer;
 private TimerTask task;

 /**
 * 构造函数
 */
 public TimerMovingBallCanvas() {
  //读取画面
  try{
   img = Image.createImage("/back.PNG");
  }catch(Exception e){
   e.printStackTrace();
  }

  // 设定Timer,TimerTask
  timer = new Timer();
  task = new TimerMovingBallTask(this);
  timer.schedule(task, 100, 100); //从100毫秒后起每100毫秒执行一次任务

 }

 /**
 * 描画方法
 */
 protected void paint(Graphics g) {
  //清除画面
  g.setColor(255, 255, 255); //白
  g.fillRect(0, 0, getWidth(), getHeight());


Tags:介绍 NEC 扩展

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接