![]() |
Springhead
An open source physics engine for virtual reality, haptics and motion generation.
|
GraphicsとPhysicsのSceneをまとめたシーングラフ全体
#include <FWScene.h>

構成 | |
| struct | Mat |
Public 型 | |
| enum | HumanInterfacePurposeId { HI_CAMERACONTROLLER, HI_OBJECTMANIPULATOR0, HI_OBJECTMANIPULATOR1, HI_OBJECTMANIPULATOR2, HI_OBJECTMANIPULATOR3 } |
|
typedef std::vector< UTRef < FWObjectIf > > | FWObjects |
|
typedef std::vector< UTRef < HIHaptic > > | FWHumanInterfaces |
|
typedef std::vector< UTRef < FWHapticPointerIf > > | FWHapticPointers |
Public 型 inherited from NameManager | |
| typedef ObjectNames::iterator | SetIt |
Public メソッド | |
| SPR_OBJECTDEF (FWScene) | |
| ACCESS_DESC (FWScene) | |
| FWScene (const FWSceneDesc &d=FWSceneDesc()) | |
| コンストラクタ | |
| FWSdkIf * | GetSdk () |
| 基本機能 | |
| PHSceneIf * | GetPHScene () |
| void | SetPHScene (PHSceneIf *s) |
| GRSceneIf * | GetGRScene () |
| void | SetGRScene (GRSceneIf *s) |
| FWObjectIf * | CreateFWObject () |
| int | NObject () const |
| FWObjectIf * | GetObject (int i) |
| FWObjectIf ** | GetObjects () |
| void | Sync () |
| void | Step () |
| void | Draw (GRRenderIf *render) |
| 描画機能 | |
| void | Draw (GRRenderIf *render, bool ph_or_gr) |
| void | DrawPHScene (GRRenderIf *render) |
| void | DrawSolid (GRRenderIf *render, PHSolidIf *solid, bool solid_or_wire) |
| void | DrawBBox (GRRenderIf *render, Posed pose, PHBBox *bbox) |
| void | DrawShape (GRRenderIf *render, CDShapeIf *shape, bool solid_or_wire) |
| void | DrawConstraint (GRRenderIf *render, PHConstraintIf *con) |
| void | DrawContact (GRRenderIf *render, PHContactPointIf *con) |
| void | DrawContactSafe (GRRenderIf *render, PHConstraintEngineIf *ce) |
| void | DrawIK (GRRenderIf *render, PHIKEngineIf *ikEngine) |
| void | DrawLimit (GRRenderIf *render, PHConstraintIf *con) |
| void | DrawHaptic (GRRenderIf *render, PHHapticEngineIf *hapticEngine) |
| void | DrawFem (GRRenderIf *render, PHFemEngineIf *femEngine) |
| void | DrawOp (GRRenderIf *render, PHOpEngineIf *opEngineif) |
| void | DrawSkeletonSensor (GRRenderIf *render) |
| void | EnableRenderPHScene (bool enable=true) |
| 描画制御 | |
| void | EnableRenderGRScene (bool enable=true) |
| void | SetRenderMode (bool solid, bool wire) |
| void | EnableRender (ObjectIf *obj, bool enable) |
| void | SetSolidMaterial (int mat, PHSolidIf *solid) |
| void | SetSolidMaterial (int mat, float alpha, PHSolidIf *solid) |
| void | SetWireMaterial (int mat, PHSolidIf *solid) |
| void | SetWireMaterial (int mat, float alpha, PHSolidIf *solid) |
| void | EnableRenderAxis (bool world, bool solid, bool con) |
| void | SetAxisMaterial (int matX, int matY, int matZ) |
| void | SetAxisScale (float scaleWorld, float scaleSolid, float scaleConst) |
| void | SetAxisStyle (int style) |
| void | EnableRenderForce (bool solid, bool con) |
| void | SetForceMaterial (int matf, int matm) |
| void | SetForceScale (float scalef, float scalem) |
| void | EnableRenderContact (bool enable) |
| void | SetContactMaterial (int mat) |
| void | EnableRenderBBox (bool enable) |
| void | SetLocalBBoxMaterial (int mat) |
| void | SetWorldBBoxMaterial (int mat) |
| void | EnableRenderGrid (bool x, bool y, bool z) |
| void | SetGridOption (char axis, float offset, float size, int slice) |
| void | SetGridMaterial (int matX, int matY, int matZ) |
| void | EnableRenderIK (bool enable) |
| void | SetIKMaterial (int mat) |
| void | SetIKScale (float scale) |
| void | EnableRenderLimit (bool enable) |
| void | EnableRenderHaptic (bool enable) |
| void | EnableRenderFem (bool enable) |
| void | EnableRenderSkeletonSensor (bool enable) |
| void | EnableRenderOp (bool enable) |
| void | DrawCoordinateAxis (GRRenderIf *render, float scale, bool solid_or_wire) |
| 内部用 | |
| void | DrawMesh (GRRenderIf *render, CDConvexMeshIf *mesh, bool solid_or_wire) |
| void | DrawFaceSolid (GRRenderIf *render, CDFaceIf *face, Vec3f *base) |
| void | DrawFaceWire (GRRenderIf *render, CDFaceIf *face, Vec3f *base) |
| void | DrawForce (GRRenderIf *render, const Vec3d &f, const Vec3d &t) |
| bool | IsRenderEnabled (ObjectIf *obj) |
| Mat | GetSolidMaterial (PHSolidIf *solid) |
| Mat | GetWireMaterial (PHSolidIf *solid) |
| Mat | GetAutoMaterial (int i) |
| HIForceDevice6D * | GetHumanInterface (size_t pos) |
| HumanInterface系関数 | |
| void | AddHumanInterface (HIForceDevice6D *d) |
| FWHapticPointerIf * | CreateHapticPointer () |
| FWHapticPointerIf * | GetHapticPointer (int i) |
| FWOpHapticHandlerIf * | CreateOpHapticHandler () |
| FWOpHapticHandlerIf * | GetOpHapticHandler () |
| int | NHapticPointers () |
| void | UpdateHapticPointers () |
| void | UpdateOpHapticHandler () |
| FWSkeletonSensorIf * | CreateSkeletonSensor (const FWSkeletonSensorDesc &desc) |
| void | UpdateSkeletonSensors () |
| virtual ObjectIf * | CreateObject (const IfInfo *info, const void *desc) |
| Scene関数の継承 | |
| virtual bool | AddChildObject (ObjectIf *o) |
| 子オブジェクトの追加 | |
| virtual bool | DelChildObject (ObjectIf *o) |
| 子オブジェクトの削除 | |
| virtual size_t | NChildObject () const |
| 子オブジェクトの数 | |
| virtual ObjectIf * | GetChildObject (size_t pos) |
| 子オブジェクトの取得 | |
| virtual NamedObjectIf * | FindObject (UTString name, UTString cls) |
Public メソッド inherited from NameManager | |
| SPR_OBJECTDEF (NameManager) | |
| virtual void | SetNameManager (NameManagerIf *s) |
| NameManagerを設定 | |
| void | AddChildManager (NameManager *c) |
| void | DelChildManager (NameManager *c) |
| template<class T > | |
| void | FindObject (UTRef< T > &t, UTString name) |
| 型と名前からオブジェクトを取得 | |
| template<class T > | |
| void | FindObject (T *&t, UTString name) |
| ObjectNames::TNameMap & | GetNameMap () |
| void | Clear () |
| すべての子オブジェクトの削除とプロパティのクリア | |
| void | Print (std::ostream &os) const |
| デバッグ用 | |
| NamedObjectIf * | FindObjectExact (UTString name, UTString cls="") |
| NamedObjectIf * | FindObjectFromDescendant (UTString name, UTString cls="") |
| NamedObjectIf * | FindObjectFromAncestor (UTString name, UTString cls="") |
Public メソッド inherited from NamedObject | |
| NamedObject (const NamedObject &n) | |
| NamedObject & | operator= (const NamedObject &n) |
| virtual const char * | GetName () const |
| 名前の取得 | |
| virtual void | SetName (const char *n) |
| 名前の設定 | |
| virtual NameManagerIf * | GetNameManager () const |
| NameManagerの取得 | |
Public メソッド inherited from Object | |
| SPR_OBJECTDEF (Object) | |
| クラス名の取得などの基本機能の実装 | |
| ObjectIf * | GetObjectIf () |
| const ObjectIf * | GetObjectIf () const |
| virtual void | PrintShort (std::ostream &os) const |
| virtual const ObjectIf * | GetChildObject (size_t pos) const |
| virtual void | Loaded (UTLoadContext *) |
| ファイルロード後に一度呼ばれる。ノードの設定に使う。 呼び出し順序に依存する処理がしたい場合は、UTLoadHandeler と UTLoadTask を使うと良い。 | |
| virtual void | Setup () |
| ノードの設定をするための関数 | |
| virtual bool | GetDesc (void *desc) const |
| デスクリプタの読み出し(コピー版) | |
| virtual void | SetDesc (const void *desc) |
| デスクリプタの設定 | |
| virtual const void * | GetDescAddress () const |
| デスクリプタの読み出し(参照版) | |
| virtual size_t | GetDescSize () const |
| デスクリプタのサイズ | |
| virtual bool | GetState (void *state) const |
| 状態の読み出し(コピー版) | |
| virtual const void * | GetStateAddress () const |
| 状態の読み出し(参照版) | |
| virtual void | GetStateR (char *&state) |
| 状態の再帰的な読み出し | |
| virtual void | SetState (const void *state) |
| 状態の設定 | |
| virtual void | SetStateR (const char *&state) |
| 状態の再帰的な設定 | |
| virtual bool | WriteStateR (std::ostream &fout) |
| 状態のファイルへの書き出し | |
| virtual bool | WriteState (std::string fileName) |
| virtual bool | ReadStateR (std::istream &fin) |
| 状態の読み込み | |
| virtual bool | ReadState (std::string fileName) |
| virtual size_t | GetStateSize () const |
| 状態のサイズ | |
| virtual void | ConstructState (void *m) const |
| メモリブロックを状態型に初期化 | |
| virtual void | DestructState (void *m) const |
| 状態型をメモリブロックに戻す | |
| virtual void | DumpObjectR (std::ostream &os, int level=0) const |
| メモリデバッグ用。単純にツリーのオブジェクトをファイルにダンプする。 | |
Public 変数 | |
| FWSdk * | sdk |
| 親SDKへの参照 | |
| FWObjects | fwObjects |
| 物理とグラフィックスのオブジェクトのリンク | |
| FWHapticPointers | fwHapticPointers |
| 登録されている力覚ポインタへのリンク | |
| FWOpHapticHandler * | fwOpHapticHandler |
| OPに使う力覚ポインタへのハンドラー | |
| PHSceneIf * | phScene |
| 物理シミュレーション用のシーン | |
| GRSceneIf * | grScene |
| グラフィックス用のシーン | |
| std::map< ObjectIf *, bool > | renderObject |
| 描画制御フラグ | |
| bool | renderPHScene |
| bool | renderGRScene |
| bool | renderSolid |
| bool | renderWire |
| bool | renderAxisWorld |
| bool | renderAxisSolid |
| bool | renderAxisConst |
| bool | renderForceSolid |
| bool | renderForceConst |
| bool | renderContact |
| bool | renderBBox |
| bool | renderGridX |
| bool | renderGridY |
| bool | renderGridZ |
| bool | renderLimit |
| bool | renderIK |
| bool | renderHaptic |
| bool | renderFEM |
| bool | renderSkeletonSensor |
| bool | renderOp |
| float | scaleAxisWorld |
| 描画スケール | |
| float | scaleAxisSolid |
| float | scaleAxisConst |
| float | scaleForce |
| float | scaleMoment |
| float | scaleIK |
| std::map< PHSolidIf *, Mat > | matSolid |
| 描画マテリアル | |
| std::map< PHSolidIf *, Mat > | matWire |
| Vec3i | matAxis |
| int | matForce |
| int | matMoment |
| int | matContact |
| int | matBBoxLocal |
| int | matBBoxWorld |
| Vec3i | matGrid |
| int | matIK |
| int | axisStyle |
| 座標軸設定 | |
| Vec3f | gridOffset |
| グリッド設定 | |
| Vec3f | gridSize |
| Vec3i | gridSlice |
|
std::vector< UTRef < FWSkeletonSensor > > | skeletonSensors |
| SkeletonSensor系関数 | |
Additional Inherited Members | |
Protected 型 inherited from NameManager | |
|
typedef std::vector < NameManager * > | NameManagers |
Protected メソッド inherited from NamedObject | |
| virtual void | PrintHeader (std::ostream &os, bool bClose) const |
| 開き括弧 | |
Protected メソッド inherited from Object | |
| virtual void | PrintChildren (std::ostream &os) const |
| 子オブジェクトをPrint | |
| virtual void | PrintFooter (std::ostream &os) const |
| 閉じ括弧 | |
| virtual void | BeforeGetDesc () const |
| GetDesc()の前に呼ばれる | |
| virtual void | AfterSetDesc () |
| SetDesc()のあとに呼ばれる | |
Static Protected メソッド inherited from Object | |
| static void | ConstructState (ObjectIf *o, char *&s) |
| sをoのStateとして初期化する. | |
| static void | DestructState (ObjectIf *o, char *&s) |
| sをoのStateからメモリブロックに戻す. | |
Protected 変数 inherited from NameManager | |
| ObjectNames | names |
| NameManagers | childManagers |
| 子の名前空間 | |
Protected 変数 inherited from NamedObject | |
| UTString | name |
| 名前 | |
| NameManager * | nameManager |
| 名前の検索や重複管理をするもの.SceneやSDKなど. | |