Springhead
An open source physics engine for virtual reality, haptics and motion generation.
クラス CDCapsule

カプセル

#include <CDCapsule.h>

CDCapsuleに対する継承グラフ

Public メソッド

 SPR_OBJECTDEF (CDCapsule)
 
 CDCapsule (const CDCapsuleDesc &desc=CDCapsuleDesc())
 
virtual bool IsInside (const Vec3f &p)
 
virtual float CalcVolume ()
 体積の計算
 
virtual Matrix3f CalcMomentOfInertia ()
 密度1での慣性テンソルの計算
 
virtual int Support (Vec3f &w, const Vec3f &v) const
 サポートポイントを求める.
 
virtual bool FindCutRing (CDCutRing &r, const Posed &toW)
 切り口を求める.接触解析に使う. ただし、球体に関しては、切り口は求めない。接触解析時には最近傍の1点さえあればいい。 球体に関してFindCutRing()が呼び出された場合には、assertionが発生する。
 
virtual int GetVtxCount () const
 
float GetRadius ()
 
void SetRadius (float r)
 
float GetLength ()
 
void SetLength (float l)
 
int LineIntersect (const Vec3f &origin, const Vec3f &dir, Vec3f *result, float *offset)
 
- Public メソッド inherited from CDConvex
 SPR_OBJECTDEF_ABST (CDConvex)
 
virtual Vec3f CalcCenterOfMass ()
 重心の計算
 
virtual void CalcMetrics ()
 体積, 重心, 慣性行列を計算して内部にキャッシュしておく
 
float GetVolume ()
 
Vec3f GetCenterOfMass ()
 体積を返す(キャッシュ済みの)
 
Matrix3f GetMomentOfInertia ()
 重心位置を返す(キャッシュ済みの)
 
virtual std::vector< int > & FindNeighbors (int vtx)
 頂点vtx のとなりの頂点を列挙する。
 
virtual Vec3f * GetBase ()
 頂点バッファを返す。
 
virtual void CalcBBox (Vec3f &bbmin, Vec3f &bbmax, const Posed &pose)
 バウンディングボックスを求める.
 
virtual double CurvatureRadius (Vec3d p)
 表面上の点pにおける曲率半径を求める
 
virtual Vec3d Normal (Vec3d p)
 平面とした場合の値。現時点ではRoundConeについてのみ実装されている(09/02/08, mitake) [詳細]
 
- Public メソッド inherited from CDShape
 SPR_OBJECTDEF_ABST (CDShape)
 
void SetStaticFriction (float mu0)
 
float GetStaticFriction ()
 
void SetDynamicFriction (float mu)
 
float GetDynamicFriction ()
 
void SetElasticity (float e)
 
float GetElasticity ()
 
void SetDensity (float d)
 
float GetDensity ()
 
void SetContactSpring (float K)
 
float GetContactSpring ()
 
void SetContactDamper (float D)
 
float GetContactDamper ()
 
void SetReflexSpring (float K)
 
float GetReflexSpring ()
 
void SetReflexDamper (float D)
 
float GetReflexDamper ()
 
void SetFrictionSpring (float K)
 
float GetFrictionSpring ()
 
void SetFrictionDamper (float D)
 
float GetFrictionDamper ()
 
void SetVibration (float vibA, float vibB, float vibW)
 
void SetVibA (float vibA)
 
float GetVibA ()
 
void SetVibB (float vibB)
 
float GetVibB ()
 
void SetVibW (float vibW)
 
float GetVibW ()
 
void SetVibT (float vibT)
 
float GetVibT ()
 
void SetVibContact (bool vibContact)
 
bool GetVibContact ()
 
const PHMaterialGetMaterial ()
 
void SetMaterial (const PHMaterial &mat)
 
- Public メソッド inherited from NamedObject
 NamedObject (const NamedObject &n)
 
NamedObjectoperator= (const NamedObject &n)
 
virtual const char * GetName () const
 名前の取得
 
virtual void SetName (const char *n)
 名前の設定
 
virtual void SetNameManager (NameManagerIf *s)
 NameManagerを設定
 
virtual NameManagerIfGetNameManager () const
 NameManagerの取得
 
- Public メソッド inherited from Object
 SPR_OBJECTDEF (Object)
 クラス名の取得などの基本機能の実装
 
ObjectIfGetObjectIf ()
 
const ObjectIfGetObjectIf () const
 
virtual void Print (std::ostream &os) const
 デバッグ用の表示
 
virtual void PrintShort (std::ostream &os) const
 
virtual ObjectIfCreateObject (const IfInfo *info, const void *desc)
 オブジェクトの作成
 
virtual size_t NChildObject () const
 子オブジェクトの数
 
virtual ObjectIfGetChildObject (size_t pos)
 子オブジェクトの取得
 
virtual const ObjectIfGetChildObject (size_t pos) const
 
virtual bool AddChildObject (ObjectIf *o)
 子オブジェクトの追加
 
virtual bool DelChildObject (ObjectIf *o)
 子オブジェクトの削除
 
virtual void Clear ()
 すべての子オブジェクトの削除とプロパティのクリア
 
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 変数

 SPR_DECLMEMBEROF_CDCapsuleDesc
 
- Public 変数 inherited from CDConvex
bool bboxReady
 PHFrameのBounding Boxの再計算の要否を表すフラグ
 
- Public 変数 inherited from CDShape
 SPR_DECLMEMBEROF_CDShapeDesc
 

Additional Inherited Members

- Static Public メソッド inherited from CDShape
static float CalcCylinderVolume (float r, float l)
 
static Matrix3f CalcCylinderInertia (float r, float l)
 
static float CalcHemisphereCoM (float r)
 
static float CalcHemisphereVolume (float r)
 
static Matrix3f CalcHemisphereInertia (float r)
 
static float CalcConeCoM (float l)
 
static float CalcConeVolume (float r, float l)
 
static Matrix3f CalcConeInertia (float r, float l)
 
static float CalcTetrahedronVolume (const Vec3f &a, const Vec3f &b, const Vec3f &c)
 
static Vec3f CalcTetrahedronCoM (const Vec3f &a, const Vec3f &b, const Vec3f &c)
 
static Matrix3f CalcTetrahedronInertia (const Vec3f &a, const Vec3f &b, const Vec3f &c)
 
static float CalcRoundConeVolume (Vec2f radius, float length)
 
static Vec3f CalcRoundConeCenterOfMass (Vec2f radius, float length)
 
static Matrix3f CalcRoundConeMomentOfInertia (Vec2f radius, float length)
 
- 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 CDConvex
float volume
 体積
 
Vec3f center
 重心
 
Matrix3f inertia
 慣性行列
 
- Protected 変数 inherited from NamedObject
UTString name
 名前
 
NameManagernameManager
 名前の検索や重複管理をするもの.SceneやSDKなど.
 

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