Blender
V3.3
|
#include <IK_QSegment.h>
Public Member Functions | |
IK_QSphericalSegment () | |
Vector3d | Axis (int dof) const |
bool | UpdateAngle (const IK_QJacobian &jacobian, Vector3d &delta, bool *clamp) |
void | Lock (int dof, IK_QJacobian &jacobian, Vector3d &delta) |
void | UpdateAngleApply () |
bool | ComputeClampRotation (Vector3d &clamp) |
void | SetLimit (int axis, double lmin, double lmax) |
void | SetWeight (int axis, double weight) |
![]() | |
virtual EIGEN_MAKE_ALIGNED_OPERATOR_NEW | ~IK_QSegment () |
void | SetTransform (const Vector3d &start, const Matrix3d &rest_basis, const Matrix3d &basis, const double length) |
void | SetParent (IK_QSegment *parent) |
IK_QSegment * | Child () const |
IK_QSegment * | Sibling () const |
IK_QSegment * | Parent () const |
void | SetComposite (IK_QSegment *seg) |
IK_QSegment * | Composite () const |
int | NumberOfDoF () const |
int | DoFId () const |
void | SetDoFId (int dof_id) |
const double | MaxExtension () const |
Matrix3d | BasisChange () const |
Vector3d | TranslationChange () const |
const Vector3d | GlobalStart () const |
const Vector3d | GlobalEnd () const |
const Affine3d & | GlobalTransform () const |
bool | Translational () const |
bool | Locked (int dof) const |
void | UnLock () |
double | Weight (int dof) const |
void | ScaleWeight (int dof, double scale) |
void | UpdateTransform (const Affine3d &global) |
virtual void | SetBasis (const Matrix3d &basis) |
void | PrependBasis (const Matrix3d &mat) |
void | Reset () |
virtual void | Scale (double scale) |
Additional Inherited Members | |
![]() | |
IK_QSegment (int num_DoF, bool translational) | |
void | RemoveChild (IK_QSegment *child) |
![]() | |
IK_QSegment * | m_parent |
IK_QSegment * | m_child |
IK_QSegment * | m_sibling |
IK_QSegment * | m_composite |
Vector3d | m_start |
Matrix3d | m_rest_basis |
Matrix3d | m_basis |
Vector3d | m_translation |
Matrix3d | m_orig_basis |
Vector3d | m_orig_translation |
double | m_max_extension |
Vector3d | m_global_start |
Affine3d | m_global_transform |
int | m_num_DoF |
int | m_DoF_id |
bool | m_locked [3] |
bool | m_translational |
double | m_weight [3] |
Definition at line 223 of file IK_QSegment.h.
IK_QSphericalSegment::IK_QSphericalSegment | ( | ) |
Definition at line 151 of file IK_QSegment.cpp.
|
virtual |
Implements IK_QSegment.
Definition at line 156 of file IK_QSegment.cpp.
References IK_QSegment::m_global_transform.
bool IK_QSphericalSegment::ComputeClampRotation | ( | Vector3d & | clamp | ) |
|
virtual |
Reimplemented from IK_QSegment.
Definition at line 322 of file IK_QSegment.cpp.
References IK_QJacobian::Lock(), IK_QSegment::m_DoF_id, and IK_QSegment::m_locked.
Reimplemented from IK_QSegment.
Definition at line 161 of file IK_QSegment.cpp.
References Clamp, M_PI, and KDL::sin().
Reimplemented from IK_QSegment.
Definition at line 196 of file IK_QSegment.cpp.
References IK_QSegment::m_weight.
|
virtual |
Implements IK_QSegment.
Definition at line 201 of file IK_QSegment.cpp.
References Freestyle::a, IK_QJacobian::AngleUpdate(), blender::math::clamp(), ComputeSwingMatrix(), ComputeTwistMatrix(), KDL::cos(), CreateMatrix(), EllipseClamp(), FuzzyZero(), M, IK_QSegment::m_basis, IK_QSegment::m_DoF_id, IK_QSegment::m_locked, MatrixToAxisAngle(), KDL::sin(), SphericalRangeParameters(), and w().
|
virtual |
Implements IK_QSegment.
Definition at line 335 of file IK_QSegment.cpp.
References IK_QSegment::m_basis.