|
Stage3D API version 0.12 |
|||||||||
前のクラス 次のクラス | フレームあり フレームなし | |||||||||
概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド |
java.lang.ObjectStage3D.Actor
このクラスはStageクラスとあわせて使用する。このクラスはStage3D APIに置ける三次元オブジェクトの雛形である。基本的にこのクラスをそのまま使用することはなく、extendsして必要な形にしてから使用する。 このクラスには三次元オブジェクトの移動と回転を簡単に指定するメソッドが用意されており、プログラマは直接ベクトルのプログラムを書くことなくそれらを使うことができる。 Java3Dに置けるグループにBranchGroupとTransformGroupがある。Actorクラスは一つのBranchGroup、一つのTransformGroupを持っている。BranchGroupはLocaleを継承したStageクラスへ三次元オブジェクトを追加するための物である。TransformGroupは、Actorクラスのメソッドでの移動や回転を行うためのものとなっている。 setAngleとgetAngleで設定される角度は極座標の角度である緯度、経度の二つで指定される。なお、極座標で言う中心軸はStageのsetUpwardVecによって設定された物を使用します(標準は(0,1,0))。回転はVector3dクラスにより表されており、それぞれ{x,y,z}={緯度,経度,なし}として扱う。 なお、実装されているメソッド以外を用いてTransformGroupを変更した場合は位置情報ならrehashPosition()、角度情報ならrehashAngle()メソッドを実行してクラスの内部情報に反映する必要がある。
コンストラクタの概要 | |
Actor()
新しいインスタンスを作成する。 |
メソッドの概要 | |
void |
addActing(int q,
Acting acting)
q番目のActingListにactingを追加する。 |
void |
afterSetName()
StageクラスのgetNewActorメソッドによってインスタンスが 作成され、名前を設定された後に呼び出される。 |
Acting |
createActing(DataPack.DataPack datapack)
このActor用のActingのインスタンスを作成する。 |
void |
doActing()
ターンが回って来たときに実行されるメソッドである。 |
Acting |
getActingInQueue(int q)
引数qで与えられた番号のActingListの実行中のActingを 取得する。 |
Acting |
getActingInQueue(java.lang.String actingname)
引数actingnameで指定された名前のActingが 実行中であるならそのActingを取得する。 |
ActingList[] |
getActingList()
このActorが持っているActingListすべての配列を返す。 |
javax.vecmath.Vector3d |
getAngle()
角度を取得する |
javax.media.j3d.BranchGroup |
getBranchGroup()
このActingのBranchGroupを取得する。 |
javax.vecmath.Vector3d |
getDirection()
方向の単位ベクトルを取得する。 |
java.lang.String |
getName()
このActorの名前を返す。 |
javax.vecmath.Vector3d |
getOldAngle()
1ターン前の角度を取得する |
javax.vecmath.Vector3d |
getPosition()
位置を取得する。 |
javax.vecmath.Matrix3d |
getRotation()
このActorの向きへの回転を表すMatrix3dを返す。 |
Stage |
getStage()
このActorの所属するStageを返す。 |
DataPack.DataPack |
getStatus(int th)
引数thで与えられた番号のActingListの実行中のActingの コマンドを取得する。 |
DataPack.DataPack |
getStatus(java.lang.String actingname)
引数actingnameで指定された名前のActingが 実行中であるならそのActingのコマンドを取得する。 |
DataPack.DataPack[] |
getStatuses()
Actorの持つすべてのActingListの 実行中のActingのコマンドを取得する。 |
javax.media.j3d.TransformGroup |
getTransformGroup()
このActingのTransformGroupを取得する。 |
void |
interpret(DataPack.DataPack datapack)
引数datapackをコマンドとしてActingを作成して 0番目のActingListに作成する。 |
void |
interpret(DataPack.DataPack datapack,
int q)
引数datapackをコマンドとしてActingを作成して q番目のActingListに作成する。 |
void |
movePosition(javax.vecmath.Vector3d vec)
次のターンまでの間、vecで指定した位置に 補完しながら移動する。 |
void |
rehashAngle()
Stage3Dパッケージ外からgetTransformGroup()メソッドによって 取得したTransformGroupのTransform3DのRotation情報を変更した 場合に内部の情報を更新するためのメソッドである。 |
void |
rehashPosition()
Stage3Dパッケージ外からgetTransformGroup()メソッドによって 取得したTransformGroupのTransform3DのPosition情報を変更した 場合に内部の情報を更新するためのメソッドである。 |
void |
removeActing(java.lang.String actingname)
setActingメソッドで登録されたActingの登録解除を行う。 |
void |
removeAllActing()
setActingメソッドで登録されたActingすべての登録解除を行う。 |
void |
setActing(java.lang.String actingname,
java.lang.Class acting)
このActorが使用可能なActingとしてActingに名前をつけて 登録する。 |
void |
setAngle(javax.vecmath.Vector3d vec)
角度を設定する。 |
void |
setAngleVector(javax.vecmath.Vector3d vec)
方向を設定する。 |
void |
setPosition(javax.vecmath.Vector3d vec)
位置を設定する。 |
void |
setRotation(javax.vecmath.Matrix3d m)
このActorの回転を表すMatrix3dを設定する。 |
void |
turnAngle(javax.vecmath.Vector3d vec)
次のターンまでの間、vecで指定した角度まで 補完しながら回転する。 |
void |
turnAngleVector(javax.vecmath.Vector3d vec)
次のターンまでの間、vecで指定した方向に 補完しながら回転する。 |
クラス java.lang.Object から継承したメソッド |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
コンストラクタの詳細 |
public Actor()
メソッドの詳細 |
public javax.vecmath.Matrix3d getRotation()
public void setRotation(javax.vecmath.Matrix3d m)
m
- このActorの向きに設定するMatrix3d。public void turnAngle(javax.vecmath.Vector3d vec)
vec
- Actorを向かせる角度。public void turnAngleVector(javax.vecmath.Vector3d vec)
vec
- Actorを向かせる方向ベクトル。public javax.vecmath.Vector3d getOldAngle()
public javax.vecmath.Vector3d getAngle()
public void setAngle(javax.vecmath.Vector3d vec)
vec
- 設定する角度。public void setAngleVector(javax.vecmath.Vector3d vec)
vec
- 設定する方向。public void setPosition(javax.vecmath.Vector3d vec)
vec
- 設定する位置。public void movePosition(javax.vecmath.Vector3d vec)
vec
- Actorを向かせる位置ベクトル。public javax.vecmath.Vector3d getPosition()
public javax.vecmath.Vector3d getDirection()
public void rehashPosition()
public void rehashAngle()
public void afterSetName()
public ActingList[] getActingList()
public Acting createActing(DataPack.DataPack datapack)
datapack
- Actingのインスタンスの作成に必要な情報。
public void addActing(int q, Acting acting)
q
- 追加するActingListの番号。acting
- 追加するActing。public java.lang.String getName()
public Stage getStage()
public void doActing()
public void interpret(DataPack.DataPack datapack)
datapack
- Actingの作成に使用されるコマンド。public void interpret(DataPack.DataPack datapack, int q)
datapack
- Actingの作成に使用されるコマンド。q
- 追加するActingListの番号。public void setActing(java.lang.String actingname, java.lang.Class acting)
actingname
- 登録するActingに関連づける名前。acting
- 登録するActingのクラスpublic void removeActing(java.lang.String actingname)
actingname
- 登録されたActingの名前。setActing(String actingname,Class acting)
public void removeAllActing()
setActing(String actingname,Class acting)
public javax.media.j3d.TransformGroup getTransformGroup()
public javax.media.j3d.BranchGroup getBranchGroup()
public DataPack.DataPack getStatus(java.lang.String actingname)
actingname
- コマンドを取得したいActingの名前。
public DataPack.DataPack getStatus(int th)
th
- 対象となるActingListの番号。public DataPack.DataPack[] getStatuses()
public Acting getActingInQueue(int q)
q
- 対象となるActingListの番号。public Acting getActingInQueue(java.lang.String actingname)
actingname
- 取得したいActingの名前。
|
author Takao Sumitomo | |||||||||
前のクラス 次のクラス | フレームあり フレームなし | |||||||||
概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド |