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

Public メソッド

 SPR_OBJECTDEF (PHIKEndEffector)
 
 ACCESS_DESC_STATE (PHIKEndEffector)
 
void Init ()
 初期化する
 
 PHIKEndEffector ()
 デフォルトコンストラクタ
 
 PHIKEndEffector (const PHIKEndEffectorDesc &desc)
 コンストラクタ
 
void SetSolid (PHSolidIf *solid)
 動作対象の剛体を設定する(1エンドエフェクタにつき1剛体が必ず対応する)
 
PHSolidIfGetSolid ()
 動作対象として設定された剛体を取得する
 
void SetParentActuator (PHIKActuatorIf *ika)
 
PHIKActuatorIfGetParentActuator ()
 
void Enable (bool enable)
 有効・無効を設定する
 
bool IsEnabled ()
 有効・無効を取得する
 
void ChangeNDOF ()
 
virtual void AfterSetDesc ()
 SetDesc()のあとに呼ばれる
 
void SetTargetLocalPosition (Vec3d localPosition)
 剛体において到達させたい位置の剛体ローカル座標を設定する
 
Vec3d GetTargetLocalPosition ()
 エンドエフェクタにおける到達させたい位置の設定された目標値を取得する
 
void SetTargetLocalDirection (Vec3d localDirection)
 方向制御をする場合の方向基準ベクトル(剛体ローカル座標系において)を設定する
 
Vec3d GetTargetLocalDirection ()
 方向制御をする場合の方向基準ベクトル(剛体ローカル座標系において)を取得する
 
void EnablePositionControl (bool enable)
 位置の制御の有効・無効を切り替える
 
bool IsPositionControlEnabled ()
 位置の制御の有効・無効を取得する
 
void SetPositionPriority (double priority)
 位置制御のプライオリティを設定する
 
double GetPositionPriority ()
 
void SetTargetPosition (Vec3d position)
 位置の目標値を設定する
 
Vec3d GetTargetPosition ()
 設定された位置の目標値を取得する
 
void EnableOrientationControl (bool enable)
 姿勢の制御の有効・無効を切り替える
 
bool IsOrientationControlEnabled ()
 姿勢の制御の有効・無効を取得する
 
void SetOrientationPriority (double priority)
 姿勢制御のプライオリティを設定する
 
double GetOrientationPriority ()
 
void SetOriCtlMode (PHIKEndEffectorDesc::OriCtlMode mode)
 姿勢制御のモードを設定する
 
PHIKEndEffectorDesc::OriCtlMode GetOriCtlMode ()
 
void SetTargetOrientation (Quaterniond orientation)
 姿勢の目標値を設定する
 
Quaterniond GetTargetOrientation ()
 設定された姿勢の目標値を取得する
 
void SetTargetDirection (Vec3d direction)
 方向の目標値を設定する
 
Vec3d GetTargetDirection ()
 方向の目標値を取得する
 
void SetTargetLookat (Vec3d lookat)
 視線方向の目標値を設定する
 
Vec3d GetTargetLookat ()
 視線方向の目標値を取得する
 
void SetTargetVelocity (Vec3d velocity)
 速度の目標値を設定する
 
Vec3d GetTargetVelocity ()
 速度の目標値を取得する
 
void SetTargetAngularVelocity (Vec3d angVel)
 角速度の目標値を設定する
 
Vec3d GetTargetAngularVelocity ()
 角速度の目標値を設定する
 
void EnableForceControl (bool enable)
 力の制御の有効・無効を切り替える
 
void SetTargetForce (Vec3d force, Vec3d workingPoint)
 力の目標値を設定する
 
Vec3d GetTargetForce ()
 設定された力の目標値を取得する
 
Vec3d GetTargetForceWorkingPoint ()
 設定された力の作用点を取得する
 
void EnableTorqueControl (bool enable)
 トルクの制御の有効・無効を切り替える
 
void SetTargetTorque (Vec3d torque)
 トルクの目標値を設定する
 
Vec3d GetTargetTorque ()
 設定されたトルクの目標値を取得する
 
Posed GetSolidTempPose ()
 一時変数の剛体の姿勢を取得する
 
virtual bool AddChildObject (ObjectIf *o)
 子オブジェクトの追加
 
virtual ObjectIfGetChildObject (size_t pos)
 子オブジェクトの取得
 
virtual size_t NChildObject () const
 子オブジェクトの数
 
virtual void ApplyExactState ()
 一時変数の剛体姿勢を現実の剛体姿勢に合わせる
 
void GetTempTarget (PTM::VVector< double > &v)
 暫定目標地点を取得する
 
void GetTempTarget (PTM::VVector< double > &v, PTM::VVector< double > &w)
 
void UpdateLagrangeMultiplier (PTM::VVector< double > &l)
 
void GetTempVelocity (PTM::VVector< double > &v)
 暫定目標速度を取得する
 
double PosDeviation ()
 目標地点までの距離を取得する
 
- Public メソッド inherited from SceneObject
virtual void SetScene (SceneIf *s)
 
virtual SceneIfGetScene () const
 
virtual SceneObjectIfCloneObject ()
 
- 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 const ObjectIfGetChildObject (size_t pos) const
 
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 変数

int ndof
 自由度
 
bool bNDOFChanged
 自由度変化フラグ
 
int number
 番号
 
PHSolidIfsolid
 制御点のある剛体
 
PHIKActuatorIfika
 
Posed lastSolidTempPose
 IK Iterationの1回前でのsolidTempPose.
 
Vec3d lagMulP
 
Vec3d lagMulR
 
- Public 変数 inherited from PHIKEndEffectorDesc
bool bEnabled
 エンドエフェクタを作動させるかどうか
 
bool bPosition
 位置制御を有効にするかどうか
 
bool bOrientation
 姿勢制御を有効にするかどうか
 
int oriCtlMode
 姿勢制御のモード(Quaternion, Direction, Lookat)
 
bool bForce
 力制御を有効にするかどうか
 
bool bTorque
 トルク制御を有効にするかどうか
 
double positionPriority
 位置制御の達成優先度(1~0、大きいほど優先度が高い)
 
double orientationPriority
 姿勢制御の達成優先度(1~0、大きいほど優先度が高い)
 
double forcePriority
 力制御の達成優先度(1~0、大きいほど優先度が高い)
 
double torquePriority
 トルク制御の達成優先度(1~0、大きいほど優先度が高い)
 
Vec3d targetPosition
 到達目標位置
 
Vec3d targetVelocity
 目標速度
 
Vec3d targetLocalPosition
 エンドエフェクタにおける到達させたい部位の位置
 
Vec3d targetLocalDirection
 方向制御をする場合の基準ベクトル(剛体ローカル座標系)
 
Quaterniond targetOrientation
 到達目標姿勢
 
Vec3d targetDirection
 方向制御(Direction)の目標方向
 
Vec3d targetLookat
 方向制御(Lookat)の目標位置
 
Vec3d targetAngVel
 目標角速度
 
Vec3d targetForce
 力の目標値
 
Vec3d targetForceWorkingPoint
 出したい力の作用点
 
Vec3d targetTorque
 トルクの目標値
 
- Public 変数 inherited from PHIKEndEffectorState
Posed solidTempPose
 IK-FK計算用の一時変数:剛体姿勢
 

Additional Inherited Members

- Public 型 inherited from PHIKEndEffectorDesc
enum  OriCtlMode { MODE_QUATERNION, MODE_DIRECTION, MODE_LOOKAT }
 
- 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()の前に呼ばれる
 
- 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 NamedObject
UTString name
 名前
 
NameManagernameManager
 名前の検索や重複管理をするもの.SceneやSDKなど.
 

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