32 IK_QSegment *tip, Vector3d &goal, Vector3d &polegoal,
float poleangle,
bool getangle);
43 std::list<IK_QTask *> tasks,
44 const double tolerance,
45 const int max_iterations);
49 bool UpdateAngles(
double &
norm);
50 void ConstrainPoleVector(
IK_QSegment *root, std::list<IK_QTask *> &tasks);
52 double ComputeScale();
53 void Scale(
double scale, std::list<IK_QTask *> &tasks);
59 bool m_secondary_enabled;
61 std::vector<IK_QSegment *> m_segments;
63 Affine3d m_rootmatrix;
65 bool m_poleconstraint;
SIMD_FORCE_INLINE btScalar norm() const
Return the norm (length) of the vector.
void SetPoleVectorConstraint(IK_QSegment *tip, Vector3d &goal, Vector3d &polegoal, float poleangle, bool getangle)
bool Solve(IK_QSegment *root, std::list< IK_QTask * > tasks, const double tolerance, const int max_iterations)
bool Setup(IK_QSegment *root, std::list< IK_QTask * > &tasks)