Springhead
An open source physics engine for virtual reality, haptics and motion generation.
クラス VirtualHuman
VirtualHumanに対する継承グラフ

Public メソッド

void Init (int argc, char *argv[])
 
void Reset (int sceneNum=0)
 
void InitCameraView ()
 
void BuildScene (int sceneNum=0)
 
void Step ()
 
void Display ()
 シーンの描画 シーンが表示されるときに呼ばれる. 描画処理をカスタマイズしたい場合にオーバライドする. デフォルトではFWSdk::Drawが呼ばれる.
 
void Keyboard (int key, int x, int y)
 キーボードイベントのハンドラ [詳細]
 
void MouseButton (int button, int state, int x, int y)
 マウスイベントのハンドラ
 
void MouseMove (int x, int y)
 マウスイベントのハンドラ デフォルトでは左ドラッグで視点変更,右ドラッグでズームイン/アウト
 
void OneStep ()
 
void UpdateCursor (int x, int y)
 
bool LoadScene (UTString filename)
 
void CalcWritheness ()
 
void RenderWritheness (GRRenderIf *curRender)
 
- Public メソッド inherited from FWApp
virtual void Init ()
 初期化 FWAppオブジェクトの初期化を行う.最初に必ず呼ぶ.
 
void InitInNewThread ()
 Create new thead and start.
 
void EndThread ()
 
void DisableIdleFunc ()
 IdleFuncの呼び出しを有効化/無効化する glutの場合,glutIdleFuncに対応する. [詳細]
 
void EnableIdleFunc (bool on=true)
 
void StartMainLoop ()
 メインループの実行 glutの場合,glutMainLoopの実行
 
void EndMainLoop ()
 メインループの終了 freeglutの場合,glutLeaveMainLoopを実行、それ以外の場合は exit(0)
 
virtual void IdleFunc ()
 アイドル処理 イベントが何もない場合にバックグラウンド処理を行う.
 
virtual void TimerFunc (int id)
 タイマー処理 繰り返し実行を行う. デフォルトではid = 0でコールバック
 
virtual void Reshape (int w, int h)
 描画領域のサイズ変更 [詳細]
 
virtual void Joystick (unsigned int buttonMask, int x, int y, int z)
 ジョイスティックのハンドラ
 
virtual void AtExit ()
 終了処理ハンドラ
 
virtual bool OnMouse (int button, int state, int x, int y)
 DVKeyMouseHandlerの仮想関数 デフォルトではFWAppの従来のイベントハンドラを呼びだすのみ. こちらを直接オーバライドしてもよい.
 
virtual bool OnMouseMove (int button, int x, int y, int zdelta)
 マウスが動いたときの処理 [詳細]
 
virtual bool OnDoubleClick (int button, int x, int y)
 ダブルクリック時の処理 [詳細]
 
virtual bool OnKey (int state, int key, int x, int y)
 キー入力処理 [詳細]
 
virtual void OnControlUpdate (FWControlIf *ctrl)
 GUI系イベントハンドラ [詳細]
 
FWWinIfCreateWin (const FWWinDesc &desc=FWWinDesc(), FWWinIf *parent=0)
 ウィンドウに対応するコンテキストを作る [詳細]
 
int NWin ()
 ウィンドウの数
 
FWWinIfGetWinFromId (int wid)
 ウィンドウをIDから探す [詳細]
 
FWWinIfGetWin (int index)
 ウィンドウを取得する [詳細]
 
FWWinIfGetCurrentWin ()
 現在のウィンドウを取得する
 
void DestroyWin (FWWinIf *win)
 ウィンドウを削除する
 
void SetCurrentWin (FWWinIf *win)
 現在のウィンドウを設定する
 
void PostRedisplay ()
 カレントウィンドウのノーマルプレーンを,再描画の必要に応じてマークする
 
int GetModifier ()
 Ctrl, Shift, Altの状態を返す 個々の派生クラスで実装される
 
void SetGRHandler (int type)
 描画の設定 FWGraphicsHandlerを設定する.最初に必ず呼ぶ.
 
GRDeviceIfGRInit ()
 FWGraphicsHandlerの初期化 FWGraphicsHandlerの初期化を行う.最初に必ず呼ぶ.
 
GRDeviceIfGRInit (int argc, char *argv[]=NULL, int type=TypeGLUT)
 
void GetDisplayLock ()
 Display関数呼び出しの排他ロックを取得する
 
void ReleaseDisplayLock ()
 Display関数呼び出しの排他ロックを解放する
 
void InitWindow ()
 削除候補API [詳細]
 
void Clear ()
 初期状態にする
 
void Reset ()
 リセットする
 
- Public メソッド inherited from FWAppBase
virtual void UserFunc ()
 ユーザ関数 メインループ実行中にユーザが処理を加えたい場合,ここに記述する. 物理シミュレーションのステップの前に呼ばれる.
 
FWSdkIfGetSdk ()
 SDKを取得する
 
void CreateSdk ()
 SDKを作成する
 
UTTimerIfCreateTimer (UTTimerIf::Mode mode=UTTimerIf::FRAMEWORK)
 タイマーを作成する [詳細]
 
UTTimerIfGetTimer (int i)
 タイマーを取得する [詳細]
 
int NTimers ()
 
- Public メソッド inherited from UTRefCount
 UTRefCount (const UTRefCount &r)
 
UTRefCountoperator= (const UTRefCount &r)
 
int AddRef () const
 
int DelRef () const
 
int RefCount () const
 

Public 変数

FWWinIfwindow
 
Vec3d gravity
 
bool bGravity
 
bool bDebug
 
bool bGraphic
 
bool bStep
 
bool bOneStep
 
bool bIK
 
PHSolidIfsoCursor
 
double zP
 
double wrL
 
double wrR
 
double wrLG
 
Vec3d trunkUp
 
Vec3d j1
 
Vec3d j2
 
Vec3d j3
 
Vec3d g1
 
Vec3d via1L
 
CRBallHumanBodyGen * bodyGen
 
CRSdkIfcrSdk
 
CRCreatureIfcreature
 
CRBodyIfbody
 
CRReachingControllerIf * reachLH
 
CRReachingControllerIf * reachRH
 

Additional Inherited Members

- Public 型 inherited from FWApp
enum  { TypeNone, TypeGLUT, TypeGLUI }
 
- Static Public メソッド inherited from FWApp
static FWAppGetApp ()
 FWAppインスタンスを取得する
 
- Protected 型 inherited from FWApp
typedef std::vector< UTRef
< FWWinIf > > 
Wins
 
- Protected 型 inherited from FWAppBase
typedef std::vector< UTRef
< UTTimerIf > > 
Timers
 
- Protected メソッド inherited from FWApp
void AssignScene (FWWinIf *win)
 ウィンドウにシーンを与える [詳細]
 
void StartInThread ()
 Initialize in new thead.
 
void CheckAndPostRedisplay ()
 
- Protected 変数 inherited from FWApp
bool bThread
 GLUTを別スレッドで動かす場合 true.
 
volatile bool bPostRedisplay
 別スレッドに再描画の要求をするためのフラグ true で再描画
 
volatile bool bEndThread
 別スレッドの場合にスレッドを終了させる。
 
UTCriticalSection displayLock
 
Wins wins
 
- Protected 変数 inherited from FWAppBase
UTRef< FWSdkIffwSdk
 Framework SDK.
 
Timers timers
 Timers to call periodic processing.
 
- Static Protected 変数 inherited from FWApp
static FWAppinstance
 唯一のFWAppインスタンス
 

関数

void Keyboard ( int  key,
int  x,
int  y 
)
virtual
引数
keyキーコード
xカーソルx座標
yカーソルy座標 特殊キーのキーコードは使用するグラフィクスライブラリに依存する.

*GLUTの場合,glutKeyboardFuncコールバックとglutSpecialFuncコールバックで キーコードが重複している.そこでglutSpecialFuncコールバックに渡されたキーコードには 256が加算されてKeyboardに渡される.

FWAppを再定義しています。


このクラスの説明は次のファイルから生成されました: