Blender
V3.3
|
#include <IK_QJacobianSolver.h>
Public Member Functions | |
IK_QJacobianSolver () | |
~IK_QJacobianSolver () | |
void | SetPoleVectorConstraint (IK_QSegment *tip, Vector3d &goal, Vector3d &polegoal, float poleangle, bool getangle) |
float | GetPoleAngle () |
bool | Setup (IK_QSegment *root, std::list< IK_QTask * > &tasks) |
bool | Solve (IK_QSegment *root, std::list< IK_QTask * > tasks, const double tolerance, const int max_iterations) |
Definition at line 23 of file IK_QJacobianSolver.h.
IK_QJacobianSolver::IK_QJacobianSolver | ( | ) |
Definition at line 13 of file IK_QJacobianSolver.cpp.
|
inline |
Definition at line 26 of file IK_QJacobianSolver.h.
|
inline |
Definition at line 33 of file IK_QJacobianSolver.h.
Referenced by IK_SolverGetPoleAngle().
void IK_QJacobianSolver::SetPoleVectorConstraint | ( | IK_QSegment * | tip, |
Vector3d & | goal, | ||
Vector3d & | polegoal, | ||
float | poleangle, | ||
bool | getangle | ||
) |
Definition at line 136 of file IK_QJacobianSolver.cpp.
Referenced by IK_SolverSetPoleVectorConstraint().
bool IK_QJacobianSolver::Setup | ( | IK_QSegment * | root, |
std::list< IK_QTask * > & | tasks | ||
) |
Definition at line 59 of file IK_QJacobianSolver.cpp.
References IK_QJacobian::ArmMatrices(), FuzzyZero(), IK_QTask::Primary(), IK_QSegment::SetDoFId(), IK_QJacobian::SetDoFWeight(), IK_QTask::SetId(), IK_QTask::SetWeight(), IK_QTask::Size(), blender::compositor::task, and IK_QTask::Weight().
Referenced by IK_Solve().
bool IK_QJacobianSolver::Solve | ( | IK_QSegment * | root, |
std::list< IK_QTask * > | tasks, | ||
const double | tolerance, | ||
const int | max_iterations | ||
) |
Definition at line 277 of file IK_QJacobianSolver.cpp.
References IK_QJacobian::AngleUpdateNorm(), IK_QJacobian::Invert(), norm(), IK_QSegment::PrependBasis(), IK_QJacobian::SubTask(), blender::compositor::task, and IK_QSegment::UpdateTransform().
Referenced by IK_Solve().