Stage3D API
version 0.12

Stage3D
クラス Stage

java.lang.Object
  拡張javax.media.j3d.Locale
      拡張Stage3D.Stage
すべての実装インタフェース:
java.lang.Runnable

public class Stage
extends javax.media.j3d.Locale
implements java.lang.Runnable

このクラスはJava 3D APIの3次元空間の基礎とLocaleを 継承したクラスである。これにclass Actorのインスタンスを 追加することで3次元舞台を作成することができる。 Stageに必須であるStageCameraManとStageManagerは どちらも"StageCameraMan"と"StageManager"と言う名前で 登録されている。


コンストラクタの概要
Stage(javax.media.j3d.VirtualUniverse vu)
          このコンストラクタはスーパークラスである Localeのコンストラクタに必要であるVirtualUniverseを 引数に持つ。
Stage(javax.media.j3d.VirtualUniverse vu, int clocktime)
          このコンストラクタはスーパークラスである Localeのコンストラクタに必要であるVirtualUniverseを 引数に持つ。
 
メソッドの概要
 void addActor(Actor actor)
          actorをこのStageに登録する。
 void dispose()
          このStageを破棄できる状態にする。
 void execCommand(DataPack.DataPack datapack)
          StageManagerにコマンドを実行させる。
 Actor getActor(java.lang.String actorname)
          actornameからその名前のActorを取得する。
 java.util.Collection getActors()
          Stageに登録されているActorのCollectionを返す。
 javax.media.j3d.BranchGroup getActorsBranchGroup()
          addActorメソッドによって追加された後に setVisibleメソッドによって可視にされたActorの BranchGroupがノードとして追加されている BranchGroupを取得する。
 javax.vecmath.Vector3d getAngle(javax.vecmath.Matrix3d m)
          upwardvecを上として、Matrix3d mが表す回転を 角度を表すVector3dにして返す。
 javax.vecmath.Vector3d getAngle(javax.vecmath.Vector3d vec)
          引数vecを方向ベクトルとしてその角度を求める。
 int getClockTime()
          ターンの間隔を取得。
 Actor getNewActor(DataPack.DataPack datapack)
          ActorのType、Nameを指定してActorのインスタンスを作成
 Actor getNewActor(java.lang.String actortype, java.lang.String actorname)
          ActorのType、Nameを指定してActorのインスタンスを作成
 CameraMan getStageCameraMan()
          カメラマンであるCameraManを取得する。
 Actor getStageManager()
          ステージマネージャであるActorを取得する。
 javax.vecmath.Vector3d getUpwardVec()
          Stageにおける上を表すベクトルを取得する。
 void removeActor(Actor actor)
          Sceneに登録されているactorを登録解除する。
 void run()
           
 void setActorType(java.lang.String actortypename, java.lang.Class actortype)
          Actorのクラスを使用可能なActorTypeにとして actortypeにactortypenameの名前を関連付けてStageに登録する。
 void setStageCameraMan(CameraMan cameraman)
          このStageのステージカメラマンを設定する。
 void setUpwardVec(javax.vecmath.Vector3d upwardvec)
          このStageの三次元空間における上を表すベクトルを 指定する。
 void setVisible(Actor actor, boolean v)
          Actorを表示・非表示にする。
 void start()
          このStageの動作を開始する。
 void throwEvent(DataPack.DataPack datapack)
          StageCameraManのメソッドcatchEvent(DataPack arg)を 呼び出す。
 
クラス javax.media.j3d.Locale から継承したメソッド
addBranchGraph, finalize, getAllBranchGraphs, getHiRes, getVirtualUniverse, numBranchGraphs, pickAll, pickAllSorted, pickAny, pickClosest, removeBranchGraph, replaceBranchGraph, setHiRes, setHiRes
 
クラス java.lang.Object から継承したメソッド
clone, equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

コンストラクタの詳細

Stage

public Stage(javax.media.j3d.VirtualUniverse vu)
このコンストラクタはスーパークラスである Localeのコンストラクタに必要であるVirtualUniverseを 引数に持つ。StageManagerはこのコンストラクタで 作成されるが、StageCameraManはコンストラクタの後で setStageCameraMan(CameraMan cameraman)メソッドを 使用して登録する必要がある。 処理の周期のクロックタイムは100msが使用される。

パラメータ:
vu - スーパークラスであるLocaleのコンストラクタに 使用する
関連項目:
setStageCameraMan(CameraMan cameraman)

Stage

public Stage(javax.media.j3d.VirtualUniverse vu,
             int clocktime)
このコンストラクタはスーパークラスである Localeのコンストラクタに必要であるVirtualUniverseを 引数に持つ。 StageManagerはこのコンストラクタで 作成されるが、StageCameraManはコンストラクタの後で setStageCameraMan(CameraMan cameraman) メソッドを使用して登録する必要がある。 処理の周期のクロックタイムに引数clocktimeが使用される。

パラメータ:
vu - スーパークラスであるLocaleのコンストラクタに 使用する
clocktime - 処理の周期のクロックタイムの値を ミリ秒単位で指定する
関連項目:
setStageCameraMan(CameraMan cameraman)
メソッドの詳細

addActor

public void addActor(Actor actor)
actorをこのStageに登録する。ただしこのメソッドの後で setVisible(Actor actor, boolean v)メソッドで可視にしなければ 不可視のままである。

パラメータ:
actor - Stageに登録するActor
関連項目:
setVisible(Actor actor, boolean v)

removeActor

public void removeActor(Actor actor)
Sceneに登録されているactorを登録解除する。

パラメータ:
actor - 登録を解除するActor

throwEvent

public void throwEvent(DataPack.DataPack datapack)
StageCameraManのメソッドcatchEvent(DataPack arg)を 呼び出す。

パラメータ:
datapack - 引数として渡されるDataPack

getActor

public Actor getActor(java.lang.String actorname)
actornameからその名前のActorを取得する。 存在しない場合はnullを返す。

パラメータ:
actorname - 取得したい

getActors

public java.util.Collection getActors()
Stageに登録されているActorのCollectionを返す。


execCommand

public void execCommand(DataPack.DataPack datapack)
StageManagerにコマンドを実行させる。

パラメータ:
datapack - 実行されるコマンドを表すDataPack

getNewActor

public Actor getNewActor(java.lang.String actortype,
                         java.lang.String actorname)
ActorのType、Nameを指定してActorのインスタンスを作成

パラメータ:
actortype - setActorTypeメソッドによってActorのクラスと 名前を関連づけして使用可能なActorTypeとして登録する。
actorname - 作成されるActorに設定する名前。
戻り値:
作成されるActorのインスタンスを返す。 しかし、指定されたactortypeがStageに使用可能なActorType として登録されていない場合はnullを返す。

getNewActor

public Actor getNewActor(DataPack.DataPack datapack)
ActorのType、Nameを指定してActorのインスタンスを作成

パラメータ:
datapack - datapackのgetStringData()によって取得される string配列の第一要素をActorTypeとして、第二要素を Actorの名前として扱う。
戻り値:
作成されるActorのインスタンスを返す。 しかし、指定されたactortypeがStageに使用可能なActorType として登録されていない場合はnullを返す。 また、引数のdatapackのtring配列がnullもしくは 長さが1以下の時もnullが返される。

setVisible

public void setVisible(Actor actor,
                       boolean v)
Actorを表示・非表示にする。 ただし、ここで言う非表示はVirtualUniverseに ノードとして存在してるか、していないかである。

パラメータ:
actor - 対象となるactor
v - trueで表示、falseで非表示にする。

setActorType

public void setActorType(java.lang.String actortypename,
                         java.lang.Class actortype)
Actorのクラスを使用可能なActorTypeにとして actortypeにactortypenameの名前を関連付けてStageに登録する。

パラメータ:
actortypename - actortypeに関連づけられる名前。
actortype - 使用可能なActorTypeとして登録される Actorを継承したクラス。

getStageManager

public Actor getStageManager()
ステージマネージャであるActorを取得する。

戻り値:
このStageのステージマネージャであるActor。

getStageCameraMan

public CameraMan getStageCameraMan()
カメラマンであるCameraManを取得する。

戻り値:
このStageのカメラマンであるCameraMan。

getClockTime

public int getClockTime()
ターンの間隔を取得。

戻り値:
ターンの間隔

getActorsBranchGroup

public javax.media.j3d.BranchGroup getActorsBranchGroup()
addActorメソッドによって追加された後に setVisibleメソッドによって可視にされたActorの BranchGroupがノードとして追加されている BranchGroupを取得する。

戻り値:
可視に設定されたActorのノードが追加されている BranchGroup。

setStageCameraMan

public void setStageCameraMan(CameraMan cameraman)
このStageのステージカメラマンを設定する。

パラメータ:
cameraman - 対象となるカメラマン。

getUpwardVec

public javax.vecmath.Vector3d getUpwardVec()
Stageにおける上を表すベクトルを取得する。 このベクトルはsetUpwardVecメソッドによって設定される。 標準では(0,1,0)が使用されている。

戻り値:
三次元空間において上を表すベクトル。
関連項目:
setUpwardVec(Vector3d Upwardvec)

setUpwardVec

public void setUpwardVec(javax.vecmath.Vector3d upwardvec)
このStageの三次元空間における上を表すベクトルを 指定する。標準では(0,1,0)が使用されている。

パラメータ:
upwardvec - Stageに設定する上を表すベクトル。
関連項目:
getUpwardVec()

getAngle

public javax.vecmath.Vector3d getAngle(javax.vecmath.Matrix3d m)
upwardvecを上として、Matrix3d mが表す回転を 角度を表すVector3dにして返す。

パラメータ:
m - 角度を求めたいMatrix3d。
戻り値:
引数mの極座標表現。

getAngle

public javax.vecmath.Vector3d getAngle(javax.vecmath.Vector3d vec)
引数vecを方向ベクトルとしてその角度を求める。

パラメータ:
vec - 角度を求めたいVector3d。
戻り値:
引数vecの角度。

start

public void start()
このStageの動作を開始する。


dispose

public void dispose()
このStageを破棄できる状態にする。


run

public void run()
定義:
インタフェース java.lang.Runnable 内の run

author Takao Sumitomo