com.nttdocomo.opt.ui
クラス ImageMap

Object
  |
  +--com.nttdocomo.opt.ui.ImageMap

推奨されていません。 イメージマップを使用する場合は基本 API の com.nttdocomo.ui.ImageMap クラスを使用してください。

public class ImageMap
extends Object

イメージを縦横に並べて画像を生成するイメージマップを定義します。
イメージを割り当てる単位をここではセルと呼びます。 セルを縦横に並べてそれぞれにイメージを割り当てることで ゲームの背景などを作成することができます。 セルのサイズは固定サイズで、コンストラクタで指定します。
マップデータは byte 型の一次元配列で、 配列のインデックス(index)とセルの座標(x, y)との間には以下の関係があります。

 index = mapWidth * y + x;
 
マップデータの配列の要素には、0 から 127 まで、最大 128 個のイメージのなかの 1 つのイメージを指定することができます。 配列の要素の値が負の場合や、対応するイメージが存在しないか null の場合は そのセルは描画されません。
     0   1   2   3   4   5   6   7   8   9
   +---+---+---+---+---+---+---+---+---+---+
  0|   |   |   |   |   |   |   |   |   |   |
   +---+---+---+---+---+---+---+---+---+---+
  1|   |   |   |   |   |   |   |   |   |   |
   +---+---+---+---+---+---+---+---+---+---+
  2|   |   |   |   |   |   |   |   |   |   |
   +---+---+---+---+---+---+---+---+---+---+
  3|   |   |   |   |   |   |   |   |   |   |
   +---+---+---+---+---+---+---+---+---+---+
  4|   |   |   |   |   |   |   |   |   |   |
   +---+---+---+---+---+---+---+---+---+---+
  5|   |   |   |   |   |   |   |   |   |   |
   +---+---+---+---+---+---+---+---+---+---+
  6|   |   |   |   |   |   |   |   |   |   |
   +---+---+---+---+---+---+---+---+---+---+
  7|   |   |   |   |   |   |   |   |   |   |
   +---+---+---+---+---+---+---+---+---+---+
  8|   |   |   |   |   |   |   |   |   |   |
   +---+---+---+---+---+---+---+---+---+---+
  9|   |   |   |   |   |   |   |   |   |   |
   +---+---+---+---+---+---+---+---+---+---+ (10, 10)
端末によってサポートされていない場合があります。未サポートの場合、メソッドが呼び出された時点でUnsupportedOperationExceptionを発生します。

導入されたバージョン:
DoJa-2.0

コンストラクタの概要
protected ImageMap()
          推奨されていません。  アプリケーションが直接このコンストラクタを呼び出してオブジェクトを生成することはできません。
  ImageMap(int cellWidth, int cellHeight)
          推奨されていません。  セルの幅と高さを指定してイメージマップを生成します。
  ImageMap(int cellWidth, int cellHeight, int mapWidth, int mapHeight, byte[] data, com.nttdocomo.ui.Image[] images)
          推奨されていません。  セルの幅と高さとマップデータを指定してイメージマップを生成します。
 
メソッドの概要
 void moveWindowLocation(int dx, int dy)
          推奨されていません。  マップデータ中で表示する領域を、大きさを変えずに座標だけを相対位置指定で設定します。
 void setImageMap(int mapWidth, int mapHeight, byte[] data, com.nttdocomo.ui.Image[] images)
          推奨されていません。  マップデータを設定します。
 void setWindow(int x, int y, int width, int height)
          推奨されていません。  マップデータ中で表示する領域を設定します。
 void setWindowLocation(int x, int y)
          推奨されていません。  マップデータ中で表示する領域を、大きさを変えずに座標だけを設定します。
 
クラス Object から継承したメソッド
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

コンストラクタの詳細

ImageMap

protected ImageMap()
推奨されていません。 
アプリケーションが直接このコンストラクタを呼び出してオブジェクトを生成することはできません。


ImageMap

public ImageMap(int cellWidth,
                int cellHeight)
推奨されていません。 
セルの幅と高さを指定してイメージマップを生成します。

パラメータ:
cellWidth - セルの幅をドット単位で指定します。
cellHeight - セルの高さをドット単位で指定します。
例外:
IllegalArgumentException - 引数 cellWidth, cellHeight のどちらかまたは両方に 0 未満の値が指定された場合に発生します。

ImageMap

public ImageMap(int cellWidth,
                int cellHeight,
                int mapWidth,
                int mapHeight,
                byte[] data,
                com.nttdocomo.ui.Image[] images)
推奨されていません。 
セルの幅と高さとマップデータを指定してイメージマップを生成します。 マップデータとイメージデータの配列は、引数で渡された参照をイメージマップオブジェクトが保持します。 引数で渡された配列の要素を変更するとマップデータやイメージデータも変更されます。 ウィンドウはマップと同じ大きさに初期化されます。

パラメータ:
cellWidth - セルの幅をドット単位で指定します。
cellHeight - セルの高さをドット単位で指定します。
mapWidth - マップの幅を指定します。
mapHeight - マップの高さを指定します。
data - マップデータの配列を指定します。
images - イメージデータの配列を指定します。
例外:
NullPointerException - 引数 data または引数 images に null が指定された場合に発生します。
IllegalArgumentException - 引数 cellWidth, cellHeight, mapWidth, mapHeight のいずれかまたは全てに 0 未満の値が指定された場合に発生します。
IllegalArgumentException - 引数 data の配列の長さが引数 mapWidth * mapHeight よりも短い場合に発生します。
メソッドの詳細

setImageMap

public void setImageMap(int mapWidth,
                        int mapHeight,
                        byte[] data,
                        com.nttdocomo.ui.Image[] images)
推奨されていません。 
マップデータを設定します。 マップデータとイメージデータの配列は、引数で渡された参照をイメージマップオブジェクトが保持します。 引数で渡された配列の要素を変更するとマップデータやイメージデータも変更されます。 ウィンドウはマップと同じ大きさに初期化されます。

パラメータ:
mapWidth - マップの幅を指定します。
mapHeight - マップの高さを指定します。
data - マップデータの配列を指定します。
images - イメージデータの配列を指定します。
例外:
NullPointerException - 引数 data または引数 images に null が指定された場合に発生します。
IllegalArgumentException - 引数 mapWidth, mapHeight のどちらかまたは両方に 0 未満の値が指定された場合に発生します。
IllegalArgumentException - 引数 data の配列の長さが引数 mapWidth * mapHeight よりも短い場合に発生します。

setWindow

public void setWindow(int x,
                      int y,
                      int width,
                      int height)
推奨されていません。 
マップデータ中で表示する領域を設定します。 領域はマップのセル単位で指定します。 drawImageMap メソッドでは、ここで指定された領域のセルを描画します。

パラメータ:
x - 表示する領域の左上の X 座標を指定します。
y - 表示する領域の左上の Y 座標を指定します。
width - 表示する領域の幅を指定します。
height - 表示する領域の高さを指定します。
例外:
IllegalArgumentException - 引数x, yが0未満の場合に発生します。
IllegalArgumentException - 引数width, heightが0以下の場合に発生します。
IllegalArgumentException - 引数xと引数widthの和が設定されているマップデータの幅より大きい場合や、引数yと引数heightの和が設定されているマップデータの高さより大きい場合に発生します。

setWindowLocation

public void setWindowLocation(int x,
                              int y)
推奨されていません。 
マップデータ中で表示する領域を、大きさを変えずに座標だけを設定します。 座標はマップのセル単位で行います。 drawImageMap メソッドでは、ここで指定された領域のセルを描画します。

パラメータ:
x - 表示する領域の左上の X 座標を指定します。
y - 表示する領域の左上の Y 座標を指定します。
例外:
IllegalArgumentException - 引数x, yが0未満の場合に発生します。
IllegalArgumentException - 引数xと(setWindowで設定されている)描画領域の幅の和が、設定されているマップデータの幅より大きい場合や、引数yと(setWindowで設定されている)描画領域の高さの和が、設定されているマップデータの高さより大きい場合に発生します。

moveWindowLocation

public void moveWindowLocation(int dx,
                               int dy)
推奨されていません。 
マップデータ中で表示する領域を、大きさを変えずに座標だけを相対位置指定で設定します。 座標はマップのセル単位で行います。 drawImageMap メソッドでは、ここで指定された領域のセルを描画します。

パラメータ:
dx - 表示する領域の左上の X 座標の増分を指定します。 正の値を指定すると右に、負の値を指定すると左に移動します。
dy - 表示する領域の左上の Y 座標の増分を指定します。 正の値を指定すると下に、負の値を指定すると上に移動します。
例外:
IllegalArgumentException - 引数dxと現在の表示位置の X 座標 の和が0より小さい場合や、引数dyと現在の表示位置の Y 座標の和が0より小さい場合に発生します。また、引数dxと現在の表示位置の X 座標 の和がマップデータの幅より大きい場合や、引数dyと現在の表示位置の Y 座標の和がマップデータの高さより大きい場合に発生します。


NTT DoCoMo,Inc.

本製品または文書は著作権法により保護されており、その使用、複製、再頒布および逆コンパイルを制限するライセンスのもとにおいて頒布されます。NTTドコモ(その他に許諾者がある場合は当該許諾者も含めて)の書面による事前の許可なく、本製品および関連する文書のいかなる部分も、いかなる方法によっても複製することが禁じられます。フォントを含む第三者のソフトウェアは、著作権法により保護されており、その提供者からライセンスを受けているものです。

Sun、Sun Microsystems、Java、J2MEおよびJ2SEは、米国およびその他の国における米国 Sun Microsystems,Inc.の商標または登録商標です。サンのロゴマークは、米国 Sun Microsystems, Inc.の登録商標です。

「iモード」、「iアプリ/アイアプリ」、「i-αppli」ロゴ、「DoJa」はNTTドコモの商標または登録商標です。