com.docomostar.opt.ui.j3d
クラス Figure

Object
  上位を拡張 com.docomostar.opt.ui.j3d.Figure

public class Figure
extends Object

モデルのデータを保持するクラスを定義します。 MBACデータからモデルのデータを読み込んで保持します。 デフォルトではMBACデータの座標そのままの基本姿勢を取りますが、 ActionTable を使用して姿勢を変化させることができます。

ボーンアニメーションによる姿勢の変化と頂点アニメーションによる外見状態の変化をサポートしています。 ActionTable には外見状態に関する情報も含まれているため、 姿勢を変化させると外見状態も同時に変化します。 通常は明示的に外見状態を設定する必要はありませんが、 アプリケーションからメソッドを呼び出して明示的に設定することも可能です。

モデルを全てカラーポリゴンで構築した場合はテクスチャは必要ありません。 ただし、それ以外の場合は必ずテクスチャを設定してから描画しなければなりません。

導入されたバージョン:
Star-1.0

コンストラクタの概要
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
 

コンストラクタの詳細

Figure

public Figure(byte[] data)
MBAC データからモデルオブジェクトを生成します。

パラメータ:
data - MBAC データを表すバイト列を指定します。
例外:
NullPointerException -
引数 data に null が指定された場合に発生します。
RuntimeException -
MBAC データが不正な場合に発生します。

Figure

public Figure(java.io.InputStream is)
       throws java.io.IOException
MBAC データからモデルオブジェクトを生成します。

パラメータ:
is - MBAC データを取得する為の入力ストリームオブジェクトを指定します。
例外:
NullPointerException -
引数 is に null が指定された場合に発生します。
java.io.IOException -
MBAC データを読み出す際に I/O エラーが起こった場合に発生します。
RuntimeException -
MBAC データが不正な場合に発生します。
メソッドの詳細

setTexture

public void setTexture(Texture texture)
モデルにマッピングするテクスチャを設定します。 モデルを描画する前に必ずテクスチャを設定しなければなりません。

このメソッドは、setTexture(Texture[]) メソッドで長さ 1 の配列を引数にテクスチャを 1 個だけ設定するのと同じです。

パラメータ:
texture - テクスチャオブジェクトを指定します。 テクスチャオブジェトはモデルマッピング用に生成されたものでなければなりません。
例外:
NullPointerException -
引数 texture が null の場合に発生します。
IllegalArgumentException -
引数 texture が不正(環境マッピング用に生成されたもの)な場合に発生します。
IllegalArgumentException -
フィギュアが必要とするテクスチャの枚数が 1 以外の場合に発生します。

setTexture

public void setTexture(Texture[] textures)
モデルにマッピングするテクスチャを設定します。 モデルを描画する前に必ずテクスチャを設定しなければなりません。
このメソッドは、複数のテクスチャを参照するモデルデータに対して複数テクスチャを設定するために使用します。

setTexture(Texture) メソッドは、このメソッドで長さ 1 の配列を引数にテクスチャを 1 個だけ設定するのと同じです。

パラメータ:
textures - テクスチャオブジェクトの配列を指定します。 テクスチャオブジェトはモデルマッピング用に生成されたものでなければなりません。
例外:
NullPointerException -
引数 textures が null か、引数 textures のいずれかの要素が null の場合に発生します。
IllegalArgumentException -
引数 textures のいずれかの要素が不正(環境マッピング用に生成されたもの)な場合に発生します。
IllegalArgumentException -
フィギュアが必要とするテクスチャの枚数と引数 textures で指定されたテクスチャの枚数とが異なる場合に発生します。

setPosture

public void setPosture(ActionTable action,
                       int index,
                       int frame)
モデルに姿勢と外見状態を設定します。

姿勢については再度このメソッドを呼び出すまで姿勢を保ちます。 外見状態については再度このメソッドを呼び出すか 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 が不正な場合に発生します。

getNumPattern

public int getNumPattern()
モデルの外見状態数を取得します。

戻り値:
モデルの外見状態数を返します

setPattern

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.の登録商標です。

FeliCaは、ソニー株式会社が開発した非接触ICカードの技術方式です。FeliCaは、ソニー株式会社の登録商標です。

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

その他記載された会社名、製品名などは該当する各社の商標または登録商標です。