KrisLibrary  1.0.0
Public Member Functions | Public Attributes | List of all members
RobotIKSolver Struct Reference

A Newton-Raphson robot IK solver. More...

#include <IKFunctions.h>

Public Member Functions

 RobotIKSolver (RobotIKFunction &function)
 
void UseJointLimits (Real revJointThreshold=Inf)
 
void UseJointLimits (const Vector &qmin, const Vector &qmax)
 
void UseBiasConfiguration (const Vector &qdesired)
 
void ClearJointLimits ()
 
void RobotToState ()
 
void StateToRobot ()
 
bool Solve (Real tolerance, int &iters)
 
void PrintStats ()
 

Public Attributes

Optimization::NewtonRoot solver
 
RobotIKFunctionfunction
 
RobotKinematics3Drobot
 

Detailed Description

A Newton-Raphson robot IK solver.

Joint limits are optionally included if the UseJointLimits() functions are called. Typically, the first version is called.

A bias configuration can be explicitly set using the UseBiasConfiguration() function. The solver will seek toward this configuration during the solve.

Optionally, a Real parameter may specify a threshold t such that a revolute joint's limits are included only if the angular range is less than t. Specifying a value less than 2pi is useful to avoid local minima for joints with wide ranges, because it allows the joint angle to pass from -pi to pi, and vice versa.


The documentation for this struct was generated from the following files: