|
|||||||||
| 前のクラス 次のクラス | フレームあり フレームなし | ||||||||
| 概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド | ||||||||
Objectcom.docomostar.opt.ui.eruption.Object3D
com.docomostar.opt.ui.eruption.Animatable
com.docomostar.opt.ui.eruption.NodeDeformer
public final class NodeDeformer
NodeDeformerNode を実装するクラスのオブジェクトをシーンノードとして子ノードに持ち、それらのノードアニメーション実行単位となるクラスです。
NodeDeformerNode を実装するクラスに関しては NodeDeformerNode をクラス を参照してください。
NodeDeformer は子ノードを一次元配列のようにフラットな形式で保持しており、 API ではインデックスを用いてアクセスします。
NodeDeformer は Figure.setNodeDeformer(NodeDeformer) を介して Figure とその Figure が持つ TransformTree に関連付けられ、それらが表すシーングラフに自身の子ノードを参加させます。
このとき、新たに別の Figure オブジェクトを NodeDeformer の子ノードとして持たせることにより、その Figure が表すシーングラフを現在のものに接木することができます。
ただし Figure の深さは最大 4 段までしか意味を持たず、更新、描画時にそれよりも深いものは無視されます。
端末によって、本クラスはサポートされていない場合があります。未サポートの場合、メソッドが呼び出された時点で UnsupportedOperationException が発生します。
| フィールドの概要 |
|---|
| クラス com.docomostar.opt.ui.eruption.Animatable から継承されたフィールド |
|---|
MCE_MAX_ACTION_NUM |
| コンストラクタの概要 | |
|---|---|
NodeDeformer(int nodeNum)
NodeDeformer を生成します。 |
|
| メソッドの概要 | |
|---|---|
void |
addNode(NodeDeformerNode node,
int tix,
Transform offset)
末尾にノードを追加します。 |
NodeDeformerNode |
getNode(int index)
ノードを取得します。 |
int |
getNodeNum()
ノード数を取得します。 |
TransformTree |
getRefTransformTree()
自身が関連付けられている Figure の持つ TransformTree を取得します。 |
int |
getTransformIndex(int index)
NodeDeformerNode が参照する TransformTree における Transform のインデックスを取得します。 |
static boolean |
isNode(Object obj)
ノードとしての使用可否を検査します。 |
boolean |
isVisible(int index)
NodeDeformerNode の可視状態を検査します。 |
void |
removeNode(int index)
指定したインデックスのノードを除去します。 |
void |
setNode(int index,
NodeDeformerNode node,
int tix,
Transform offset)
ノードを設定します。 |
void |
setVisible(int index,
boolean visible)
NodeDeformerNode に対して可視/不可視を設定します。 |
| クラス com.docomostar.opt.ui.eruption.Animatable から継承されたメソッド |
|---|
getAction, getAction, getActionController, getFrame, getRefGid, getRefGid, setAction, setAction, setActionController, setFrame, setRefGid, setRefGid, setUseActionControllerNum, updatePosture |
| クラス com.docomostar.opt.ui.eruption.Object3D から継承されたメソッド |
|---|
dispose, equals, findObject3D, findObject3D, getClassType, getUserId, hashCode, isDisposed, isRenderEnable, setRenderEnable, setUserId |
| クラス Object から継承されたメソッド |
|---|
getClass, notify, notifyAll, toString, wait, wait, wait |
| コンストラクタの詳細 |
|---|
public NodeDeformer(int nodeNum)
NodeDeformer を生成します。
初期値は以下の通りです。
true
nodeNum - ノード数を指定します。
IllegalArgumentException -
nodeNum が [1, 32767] 以外の場合に発生します。| メソッドの詳細 |
|---|
public final void setNode(int index,
NodeDeformerNode node,
int tix,
Transform offset)
node が null の場合は設定を解除します。この場合、引数 tix は任意です。
index - インデックスを指定します。node - 設定するノードを指定します。tix - 参照する TransformTree でのインデックスを指定します。offset - オフセットを表す Transform を指定します。オフセットなしの場合は null を指定します。
IllegalArgumentException -
index が [0, 最大ノード数 - 1] 以外の場合に発生します。
IllegalArgumentException -
tix が [0, 32766] 以外の場合に発生します。
IllegalArgumentException -
This が Figure に属しており、その Figure が TransformTree を持っている場合に、 tix が TransformTree の範囲外を参照した場合に発生します。
IllegalArgumentException -
IllegalArgumentException -
node != null かつ node が 親の NodeDeformer に関連付けられている場合に発生します。
IllegalArgumentException -
node != null かつ node が GeometricShape オブジェクトで、既に NodeDeformer、Figure や IndexBuffer に関連付けられている場合に発生します。
IllegalArgumentException -
node のタイプが Figure でかつ、node が持つ NodeDeformer が This である場合に発生します。
public final void addNode(NodeDeformerNode node,
int tix,
Transform offset)
node - 追加するノードを指定します。tix - 参照する TransformTree でのインデックスを指定します。offset - オフセットを表す Transform を指定します。オフセットなしの場合は null を指定します。
NullPointerException -
node が null の場合に発生します。
IllegalArgumentException -
IllegalArgumentException -
tix が [0, 32766] 以外の場合に発生します。
IllegalArgumentException -
This が Figure に属しており、その Figure が TransformTree を持っている場合に、tix が TransformTree の範囲外を参照した場合に発生します。
IllegalArgumentException -
IllegalArgumentException -
node が 親の NodeDeformer に関連付けられている場合に発生します。
IllegalArgumentException -
node != null かつ node が GeometricShape オブジェクトで、既に NodeDeformer、Figure や IndexBuffer に関連付けられている場合に発生します。
IllegalArgumentException -
node のタイプが Figure でかつ、node が持つ NodeDeformer が This である場合に発生します。public final void removeNode(int index)
ノード数は 1 つ減り、これ以降のインデックスのノードは 1 つ前に詰められます。
index - 除去するインデックスを指定します。
IllegalArgumentException -
index が [0, 最大ノード数 - 1] 以外の場合に発生します。public final NodeDeformerNode getNode(int index)
index - 取得するノードのインデックスを指定します。
null を返します。
IllegalArgumentException -
index が [0, 最大ノード数 - 1] 以外の場合に発生します。public final int getNodeNum()
public final TransformTree getRefTransformTree()
Figure の持つ TransformTree を取得します。
TransformTree を返します。public static final boolean isNode(Object obj)
obj - オブジェクトを指定します。
true
false
public final void setVisible(int index,
boolean visible)
NodeDeformerNode に対して可視/不可視を設定します。
index で指定した NodeDeformerNode に対して描画可視/不可視の設定をします。
Figure の場合、不可視の状態では This の持つメッシュが描画されなくなるだけであり、This よりも下の階層は通常通り描画されます。
Light, Camera を不可視にした場合、描画時にそれらは無効となります。
不可視にした場合、衝突判定、可視判定、ピッキングの対象からも外れます。
index - NodeDeformerNode のインデックスを指定します。visible - 可視/不可視を指定します。指定できる値は、以下の通りです。
true
false
IllegalArgumentException -
index が [0, 最大ノード数 - 1] 以外の場合に発生します。public final boolean isVisible(int index)
NodeDeformerNode の可視状態を検査します。
index で指定した NodeDeformerNode に対して可視/不可視の状態を取得します。
index - NodeDeformerNodeのインデックスを指定します。
true
false
IllegalArgumentException -
index が [0, 最大ノード数 - 1] 以外の場合に発生します。public final int getTransformIndex(int index)
NodeDeformerNode が参照する TransformTree における Transform のインデックスを取得します。
index 番目の子である NodeDeformerNode がシーングラフ上で参照する TransformTree のノードを示すインデックスを取得します。
index - NodeDeformerNode のインデックスを指定します。
TransformTree における Transform のインデックスを返します。index に NodeDeformerNode が設定されていない場合は 0 を返します。
IllegalArgumentException -
index が [0, 最大ノード数 - 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ドコモの商標または登録商標です。
その他記載された会社名、製品名などは該当する各社の商標または登録商標です。