com.jblend.graphics.j3d
クラス Figure

java.lang.Object
  |
  +--com.jblend.graphics.j3d.Figure

public class Figure
extends java.lang.Object

モデルを表すクラス。
描画範囲の設定はGraphicsのクリップを利用して下さい。


コンストラクタの概要
Figure(byte[] data)
          Figureコンストラクタ
Figure(java.lang.String name)
          Figureコンストラクタ
 
メソッドの概要
 int getNumPattern()
          モデルの外見状態数を取得する。
 int getNumTextures()
          テクスチャーデータの数を取得する。
 void setPattern(int pattern)
          モデルの外見状態を設定する。
 void setPosture(ActionTable actTable, int action, int frame)
          姿勢を設定する。
 void setTexture(Texture texture)
          テクスチャーデータを設定する。
 void setTexture(Texture[] textures)
          テクスチャーデータを複数設定する。
 
クラス java.lang.Object から継承したメソッド
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

コンストラクタの詳細

Figure

public Figure(byte[] data)
Figureコンストラクタ
パラメータ:
data - モデルデータ
例外:
NullPointerException - データがnullの場合に発生します。
java.lang.RuntimeException - 生成失敗の場合に発生します。
IllegalStateException - スプライト実行中に呼び出された場合に発生します。

Figure

public Figure(java.lang.String name)
       throws java.io.IOException
Figureコンストラクタ
パラメータ:
name - リソース名
例外:
NullPointerException - リソース名がnullの場合に発生します。
java.lang.RuntimeException - 生成失敗の場合に発生します。
java.io.IOException - リソースのオープンに失敗した場合に発生します。
IllegalStateException - スプライト実行中に呼び出された場合に発生します。
メソッドの詳細

setPosture

public void setPosture(ActionTable actTable,
                       int action,
                       int frame)
姿勢を設定する。
パラメータ:
actTable - アクションテーブル
action - アクション番号
frame - フレーム番号
例外:
NullPointerException - actTableがnullの場合に発生します。
java.lang.IllegalArgumentException - アクション番号がアクションテーブルの範囲外の場合に発生します。
IllegalStateException - スプライト実行中に呼び出された場合に発生します。

setTexture

public void setTexture(Texture texture)
テクスチャーデータを設定する。
パラメータ:
texture - テクスチャーデータ
例外:
NullPointerException - テクスチャーデータがnullの場合に発生します。
java.lang.IllegalArgumentException - モデル用でテクスチャーでない場合に発生します。

setTexture

public void setTexture(Texture[] textures)
テクスチャーデータを複数設定する。
パラメータ:
textures - テクスチャーデータの配列
例外:
NullPointerException - 引数 textures が null の場合か 引数 textures のいずれかの要素が null の場合に発生します。
java.lang.IllegalArgumentException - 引数 textures のいずれかの要素がモデル用でテクスチャーでない場合に発生します。
導入されたバージョン:
JSCL1.2

getNumTextures

public int getNumTextures()
テクスチャーデータの数を取得する。
戻り値:
int - テクスチャーデータ数
導入されたバージョン:
JSCL1.2

getNumPattern

public int getNumPattern()
モデルの外見状態数を取得する。
戻り値:
モデルの外見状態数
導入されたバージョン:
JSCL1.2

setPattern

public void setPattern(int pattern)
モデルの外見状態を設定する。 モデルの外見の状態を明示的に設定したい場合にこのメソッドを使用します。 通常はsetPosture( ActionTable, int, int )を呼び出すことで姿勢と外見の状態は設定されますので、 ActionTable を使用したアニメーションを行わないときに使用してください。 モデルの外見の状態は、ベースとなる状態(共通セット)を含め最大33個存在します。 (設定可能なモデルの外見の状態数はgetNumPattern()で取得して下さい) 外見の状態の n 番目(1以上)を指定する場合は本メソッドの引数として (1 << (n-1)) の値を指定します。 外見が何も指定されていない状態(共通セット)にするには 0 を指定します。

設定例:
外見の状態 0: 共通セットとなる顔
外見の状態 1: 閉じた右目
外見の状態 2: 開いた右目
外見の状態 3: 閉じた左目
外見の状態 4: 開いた左目
外見の状態 5: 閉じた口
外見の状態 6: 開いた口

のような外観の状態をもつモデルがあるとき、

setPattern( 0 ) -> 目と口のない顔
setPattern( 1 << 0 ) -> 閉じた右目を持つ顔
setPattern( 1 << 1 ) -> 開いた右目を持つ顔
setPattern( 1 << 2 ) -> 閉じた左目を持つ顔
setPattern( 1 << 3 ) -> 開いた左目を持つ顔
setPattern( (1 << 1) | (1 << 3) | (1 << 5) ) -> 開いた両目と開いた口を持つ顔
setPattern( (1 << 0) | (1 << 1) ) -> 閉じた右目と開いた右目の両方を持つ顔
パラメータ:
pattern - モデルの外見状態
例外:
java.lang.IllegalArgumentException - pattern に不正な値が指定された場合に発生します。
導入されたバージョン:
JSCL1.2