Position constraint. More...
#include <ik.h>
Public Member Functions | |
void | GetAtt (fMat33 &_abs_att) |
obtain constraint orientation | |
void | GetConstIndex (IK::ConstIndex _cindex[]) |
void | GetPos (fVec3 &_abs_pos) |
obtain constraint position | |
IK::ConstType | GetType () |
Returns the constraint type. | |
IKHandle (IK *_ik, const char *_jname, Joint *_jnt, IK::ConstIndex cindex[6], IK::Priority _pri, double _gain, const fVec3 &_rel_pos=0.0, const fMat33 &_rel_att=1.0, Joint *_other_joint=0) | |
int | Reset () |
reset the constraint position/orientation by the current values | |
void | SetAtt (const fMat33 &_abs_att) |
set the constraint orientation | |
void | SetCharacterScale (double _scale, const char *charname=0) |
void | SetPos (const fVec3 &_abs_pos) |
set the constraint position | |
void | SetRelPos (const fVec3 &_rel_pos) |
set relative position of the constraint | |
~IKHandle () | |
Protected Member Functions | |
int | calc_feedback () |
compute the feedback velocity | |
int | calc_jacobian () |
Computes the constraint Jacobian. | |
Protected Attributes | |
fMat33 | abs_att |
current constraint orientation | |
fVec3 | abs_pos |
current constraint position | |
IK::ConstIndex | const_index [6] |
with/without constraint for each DOF | |
Joint * | other_joint |
connected to other joint: constrains the relative position and/or orientation w.r.t. other_joint's frame | |
fMat33 | rel_att |
fVec3 | rel_pos |
Friends | |
class | IK |
IKHandle::IKHandle | ( | IK * | _ik, |
const char * | _jname, | ||
Joint * | _jnt, | ||
IK::ConstIndex | cindex[6], | ||
IK::Priority | _pri, | ||
double | _gain, | ||
const fVec3 & | _rel_pos = 0.0 , |
||
const fMat33 & | _rel_att = 1.0 , |
||
Joint * | _other_joint = 0 |
||
) | [inline] |
Default constructor.
[in] | _ik | |
[in] | _jname | |
[in] | _jnt | |
[in] | cindex | |
[in] | _pri | |
[in] | _gain | |
[in] | _rel_pos | relative position in joint frame (default: 0,0,0) |
[in] | _rel_att | relative orientation in joint frame (default: identity) |
[in] | _other_joint | joint to which the constraint is attached (default: world) |
IKHandle::~IKHandle | ( | ) | [inline] |
int IKHandle::calc_feedback | ( | ) | [protected, virtual] |
int IKHandle::calc_jacobian | ( | ) | [protected, virtual] |
Computes the constraint Jacobian.
Computes the constraint Jacobian. implementing the function:
calc_jacobian_slide()
- calc_jacobian_free()
calc_jacobian()
calls each function depending on the joint typecalc_jacobian()
Reimplemented from IKConstraint.
Definition at line 16 of file handle.cpp.
void IKHandle::GetAtt | ( | fMat33 & | _abs_att | ) | [inline] |
void IKHandle::GetConstIndex | ( | IK::ConstIndex | _cindex[] | ) | [inline] |
void IKHandle::GetPos | ( | fVec3 & | _abs_pos | ) | [inline] |
IK::ConstType IKHandle::GetType | ( | ) | [inline, virtual] |
int IKHandle::Reset | ( | ) | [inline, virtual] |
reset the constraint position/orientation by the current values
Reimplemented from IKConstraint.
void IKHandle::SetAtt | ( | const fMat33 & | _abs_att | ) | [inline] |
void IKHandle::SetCharacterScale | ( | double | _scale, |
const char * | charname = 0 |
||
) | [virtual] |
Reimplemented from IKConstraint.
void IKHandle::SetPos | ( | const fVec3 & | _abs_pos | ) | [inline] |
void IKHandle::SetRelPos | ( | const fVec3 & | _rel_pos | ) | [inline] |
friend class IK [friend] |
Reimplemented from IKConstraint.
fMat33 IKHandle::abs_att [protected] |
fVec3 IKHandle::abs_pos [protected] |
IK::ConstIndex IKHandle::const_index[6] [protected] |
Joint* IKHandle::other_joint [protected] |
fMat33 IKHandle::rel_att [protected] |
fVec3 IKHandle::rel_pos [protected] |