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

形状の組

#include <PHConstraintEngine.h>

PHShapePairForLCPに対する継承グラフ

Public メソッド

 SPR_OBJECTDEF (PHShapePairForLCP)
 
void EnumVertex (unsigned ct, PHSolid *solid0, PHSolid *solid1)
 接触解析.接触部分の切り口を求めて,切り口を構成する凸多角形の頂点をengineに拘束として追加する.
 
int NSectionVertexes ()
 
Vec3d GetSectionVertex (int i)
 
double GetContactDimension ()
 接触面積.接触形状の頂点座標から面積を計算
 
Vec3d GetNormalVector ()
 接触面の単位法線ベクトル
 
void GetClosestPoints (Vec3d &pa, Vec3d &pb)
 
- Public メソッド inherited from PHShapePair
 SPR_OBJECTDEF_ABST_NOIF (PHShapePair)
 
void Init (PHSolidPair *sp, PHFrame *fr0, PHFrame *fr1)
 
void SetSt (const CDShapePairState &s)
 
void GetSt (CDShapePairState &s)
 
PHFrameIfGetFrame (int i)
 
- Public メソッド inherited from CDShapePair
void SetState (const CDShapePairState &s)
 
virtual bool Detect (unsigned ct, const Posed &pose0, const Posed &pose1)
 接触判定.接触が見つかった場合に接触状態を更新
 
void CalcNormal ()
 
bool ContDetect (unsigned ct, const Posed &pose0, const Posed &pose1, const Vec3d &delta0, const Vec3d &delta1, double dt)
 連続接触判定.同時に法線/中心なども計算. [詳細]
 
CDShapeIfGetShape (int i)
 形状を取得する
 
Vec3d GetClosestPointOnWorld (int i)
 closestpointをワールド座標系で取得する
 
Posed GetShapePose (int i)
 shapePoseの取得
 
Vec3d GetNormal ()
 接触法線の取得
 
- Public メソッド inherited from CDShapePairState
 SPR_DESCDEF (CDShapePair)
 
- 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 変数

std::vector< Vec3d > section
 交差断面の頂点.個々がPHContactPointとなる.可視化のために保持
 
- Public 変数 inherited from PHShapePair
PHSolidPairsolidPair
 
PHFrameframe [2]
 
- Public 変数 inherited from CDShapePair
enum Spr::CDShapePair::State state
 
CDConvexshape [2]
 
Posed shapePoseW [2]
 
Vec3d closestPoint [2]
 最近傍点(ローカル座標系)
 
Vec3d commonPoint
 交差部分の内点(World座標系)
 
Vec3d center
 2つの最侵入点の中間の点
 
Vec3d iNormal
 積分による法線
 
- Public 変数 inherited from CDShapePairState
Vec3d normal
 衝突の法線(0から1へ) (Global)
 
double depth
 衝突の深さ:最近傍点を求めるために,2物体を動かす距離.
 
unsigned lastContactCount
 最後に接触した時刻
 

Additional Inherited Members

- Public 型 inherited from CDShapePair
enum  State { NONE, NEW, CONTINUE }
 
- Protected メソッド inherited from Object
virtual void PrintHeader (std::ostream &os, bool bClose) const
 開き括弧
 
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からメモリブロックに戻す.
 

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