|
||||||||||
前のクラス 次のクラス | フレームあり フレームなし | |||||||||
概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド |
Object | +--com.nttdocomo.opt.ui.j3d.Figure
モデルのデータを保持するクラスを定義します。
MBACデータからモデルのデータを読み込んで保持します。
デフォルトではMBACデータの座標そのままの基本姿勢を取りますが、
ActionTable
を使用して姿勢を変化させることができます。
[DoJa-2.0]
ボーンアニメーションによる姿勢の変化をサポートしています。
[DoJa-3.0]
ボーンアニメーションによる姿勢の変化に加えて、
頂点アニメーションによる外見状態の変化もサポートしています。
ActionTable
には外見状態に関する情報も含まれているため、
姿勢を変化させると外見状態も同時に変化します。
通常は明示的に外見状態を設定する必要はありませんが、
アプリケーションからメソッドを呼び出して明示的に設定することも可能です。
[DoJa-2.0]
必ずテクスチャを設定してから描画しなければなりません。
[DoJa-3.0]
モデルを全てカラーポリゴンで構築した場合はテクスチャは必要ありませんが、それ以外の場合はテクスチャを設定してから描画しなければなりません。
端末によってサポートされていない場合があります。未サポートの場合、 メソッドが呼び出された時点でUnsupportedOperationExceptionを発生します。
コンストラクタの概要 | |
Figure(byte[] data)
MBAC データからモデルオブジェクトを生成します。 |
|
Figure(java.io.InputStream is)
MBAC データからモデルオブジェクトを生成します。 |
メソッドの概要 | |
int |
getNumPattern()
モデルの外見状態数を取得します。 |
void |
setPattern(int pattern)
モデルの外見状態を設定します。 |
void |
setPosture(ActionTable action,
int index,
int frame)
モデルに姿勢を設定します。 |
void |
setTexture(Texture texture)
モデルにマッピングするテクスチャを設定します。 |
void |
setTexture(Texture[] textures)
モデルにマッピングするテクスチャを設定します。 |
クラス Object から継承したメソッド |
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
コンストラクタの詳細 |
public Figure(byte[] data)
data
- MBAC データを表すバイト列を指定します。
NullPointerException
- 引数 data に null が指定された場合に発生します。
RuntimeException
- MBAC データが不正な場合に発生します。
public Figure(java.io.InputStream is) throws java.io.IOException
is
- MBAC データを取得する為の入力ストリームオブジェクトを指定します。
NullPointerException
- 引数 is に null が指定された場合に発生します。
java.io.IOException
- MBAC データを読み出す際に I/O エラーが起こった場合に発生します。
RuntimeException
- MBAC データが不正な場合に発生します。
メソッドの詳細 |
public void setTexture(Texture texture)
[DoJa-3.0]
このメソッドは、setTexture(Texture[])
メソッドで長さ 1 の配列を引数にテクスチャを 1 個だけ設定するのと同じです。
texture
- テクスチャオブジェクトを指定します。
テクスチャオブジェトはモデルマッピング用に生成されたものでなければなりません。
NullPointerException
- 引数 texture が null の場合に発生します。
IllegalArgumentException
- 引数 texture が不正(環境マッピング用に生成されたもの)な場合に発生します。
IllegalArgumentException
- [DoJa-3.0] フィギュアが必要とするテクスチャの枚数が 1 以外の場合に発生します。
public void setTexture(Texture[] textures)
setTexture(Texture)
メソッドは、このメソッドで長さ 1 の配列を引数にテクスチャを 1 個だけ設定するのと同じです。
textures
- テクスチャオブジェクトの配列を指定します。
テクスチャオブジェトはモデルマッピング用に生成されたものでなければなりません。
NullPointerException
- 引数 textures が null か、引数 textures のいずれかの要素が null の場合に発生します。
IllegalArgumentException
- 引数 textures のいずれかの要素が不正(環境マッピング用に生成されたもの)な場合に発生します。
IllegalArgumentException
- フィギュアが必要とするテクスチャの枚数と引数 textures で指定されたテクスチャの枚数とが異なる場合に発生します。
public void setPosture(ActionTable action, int index, int frame)
[DoJa-3.0]
モデルに姿勢と外見状態を設定します。
モデルは、姿勢については再度このメソッドを呼び出すまで姿勢を保ちますが、
外見状態については再度このメソッドを呼び出すか setPattern(int)
メソッドを呼び出すまで外見状態を保ちます。
action
- 設定したい姿勢を含むアクションテーブルオブジェクトを指定します。index
- 設定したい姿勢のアクションのインデックスを指定します。
0 以上でかつ ActionTable.getNumAction()
が返す値よりも小さくなければなりません。frame
- 設定したい姿勢のフレームを指定します。
基本的に 0 から ActionTable.getMaxFrame(int)
メソッドが返す値までの値を指定します。
0 より小さい場合は 0 に、ActionTable.getMaxFrame(int)
メソッドが返す値より大きい場合は ActionTable.getMaxFrame(int)
メソッドが返す値に調整されます。
NullPointerException
- 引数 action が null の場合に発生します。
IllegalArgumentException
- 引数 index が不正な場合に発生します。
public int getNumPattern()
public void setPattern(int pattern)
ActionTable
が持つアクションデータ内には姿勢と一緒に外見状態に関する情報も含まれているため、
setPosture(Action, int, int)
メソッドを呼び出すと姿勢と同時に外見状態も設定されます。
そのため、通常はこのメソッドを呼び出す必要はありませんが、
アプリケーションが明示的に外見状態を設定したい場合はこのメソッドを使用します。
モデルの外見状態は、getNumPattern()
メソッドで取得できる外見状態数だけ個別に設定が可能です。
外見状態の n 番目 (0 ≤ n < getNumPattern()
) を使用する場合は、引数 pattern の LSB から (n + 1)
ビット目を 1 にしてこのメソッドを呼び出します。
pattern
- モデルの外見状態を指定します。
LSB から外見状態数分のビットを使用して、それぞれの外見状態を使用するか否かを指定します。
IllegalArgumentException
- 引数 pattern に不正な値が指定された場合に発生します。
具体的には、LSB から外見状態数分以上のビットが 1 になっている値が指定された場合に発生します。
|
||||||||||
前のクラス 次のクラス | フレームあり フレームなし | |||||||||
概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド |
NTT DoCoMo,Inc.
本製品または文書は著作権法により保護されており、その使用、複製、再頒布および逆コンパイルを制限するライセンスのもとにおいて頒布されます。NTTドコモ(その他に許諾者がある場合は当該許諾者も含めて)の書面による事前の許可なく、本製品および関連する文書のいかなる部分も、いかなる方法によっても複製することが禁じられます。フォントを含む第三者のソフトウェアは、著作権法により保護されており、その提供者からライセンスを受けているものです。
Sun、Sun Microsystems、Java、J2MEおよびJ2SEは、米国およびその他の国における米国 Sun Microsystems,Inc.の商標または登録商標です。サンのロゴマークは、米国 Sun Microsystems, Inc.の登録商標です。
「iモード」、「iアプリ/アイアプリ」、「i-αppli」ロゴ、「DoJa」はNTTドコモの商標または登録商標です。