Common components of IK solvers.  
 More...
#include <ik.h>
 | 
|   | IKSolver (const RobotPtr &robot, unsigned int frames) | 
|   | Constructor. Protected so only derived classes can create this.  More...
  | 
|   | 
| void  | setRequest (unsigned int task, Request request) | 
|   | Sets the task matrix values for a task at index task according to a request.  More...
  | 
|   | 
| void  | setTask (unsigned int task, Index index, bool active) | 
|   | Sets the specific index component of a task to active.  More...
  | 
|   | 
| void  | setRandom (KDL::JntArray &array) const | 
|   | Sets a KDL array to random values between joint limits.  More...
  | 
|   | 
Common components of IK solvers. 
Definition at line 36 of file ik.h.
 
◆ Index
KDL specific indices for different components of the task matrix. 
| Enumerator | 
|---|
| POS_X  | X Position.  
 | 
| POS_Y  | Y Position.  
 | 
| POS_Z  | Z Position, Ignored as we are 2D.  
 | 
| ROT_X  | X Rotation, Ignored as we are 2D.  
 | 
| ROT_Y  | Y Rotation, Ignored as we are 2D.  
 | 
| ROT_Z  | Z Rotation.  
 | 
Definition at line 79 of file ik.h.
 
 
◆ Request
A bitmask specification of what task components should this IK request satisfy. 
| Enumerator | 
|---|
| NONE  | No components.  
 | 
| X_AXIS  | X component.  
 | 
| Y_AXIS  | Y component.  
 | 
| ROTATION  | Rotation component.  
 | 
| POSITION  | X- and Y-axis components.  
 | 
| ALL  | All components.  
 | 
Definition at line 41 of file ik.h.
 
 
◆ IKSolver() [1/3]
  
  
      
        
          | se2ez::IKSolver::IKSolver  | 
          ( | 
          const IKSolver &  | 
           | ) | 
           | 
         
       
   | 
  
delete   | 
  
 
 
◆ IKSolver() [2/3]
  
  
      
        
          | se2ez::IKSolver::IKSolver  | 
          ( | 
          IKSolver &&  | 
           | ) | 
           | 
         
       
   | 
  
delete   | 
  
 
 
◆ IKSolver() [3/3]
  
  
      
        
          | IKSolver::IKSolver  | 
          ( | 
          const RobotPtr &  | 
          robot,  | 
         
        
           | 
           | 
          unsigned int  | 
          frames  | 
         
        
           | 
          ) | 
           |  | 
         
       
   | 
  
protected   | 
  
 
Constructor. Protected so only derived classes can create this. 
IKSolver 
Definition at line 18 of file ik.cpp.
 
 
◆ setJointWeight()
  
  
      
        
          | void IKSolver::setJointWeight  | 
          ( | 
          const std::string &  | 
          frame,  | 
         
        
           | 
           | 
          const Eigen::VectorXd &  | 
          weights  | 
         
        
           | 
          ) | 
           |  | 
         
       
   | 
  
virtual   | 
  
 
Sets the weights on a specific joint in the robot for IK solving. 
- Parameters
 - 
  
    | [in] | frame | Frame to set weights for.  | 
    | [in] | weights | Weights to use for frame.  | 
  
   
Reimplemented in se2ez::TreeIK.
Definition at line 41 of file ik.cpp.
 
 
◆ setJointWeights()
  
  
      
        
          | void IKSolver::setJointWeights  | 
          ( | 
          const Eigen::VectorXd &  | 
          weights | ) | 
           | 
         
       
   | 
  
virtual   | 
  
 
Sets the weights for all joints in the robot for IK solving. 
- Parameters
 - 
  
    | [in] | weights | Weights to use.  | 
  
   
Reimplemented in se2ez::TreeIK.
Definition at line 56 of file ik.cpp.
 
 
◆ setLambda()
  
  
      
        
          | void IKSolver::setLambda  | 
          ( | 
          double  | 
          lambda | ) | 
           | 
         
       
   | 
  
virtual   | 
  
 
Sets lambda, damping constant in WDLS. 
- Parameters
 - 
  
  
 
Reimplemented in se2ez::TreeIK.
Definition at line 69 of file ik.cpp.
 
 
◆ setRandom()
  
  
      
        
          | void IKSolver::setRandom  | 
          ( | 
          KDL::JntArray &  | 
          array | ) | 
           const | 
         
       
   | 
  
protected   | 
  
 
Sets a KDL array to random values between joint limits. 
- Parameters
 - 
  
    | [out] | array | Array to randomly set.  | 
  
   
Definition at line 80 of file ik.cpp.
 
 
◆ setRequest()
  
  
      
        
          | void IKSolver::setRequest  | 
          ( | 
          unsigned int  | 
          task,  | 
         
        
           | 
           | 
          Request  | 
          request  | 
         
        
           | 
          ) | 
           |  | 
         
       
   | 
  
protected   | 
  
 
Sets the task matrix values for a task at index task according to a request. 
- Parameters
 - 
  
    | [in] | task | Index of task to set.  | 
    | [in] | request | Request to set.  | 
  
   
Definition at line 90 of file ik.cpp.
 
 
◆ setRestarts()
      
        
          | void IKSolver::setRestarts  | 
          ( | 
          unsigned int  | 
          restarts | ) | 
           | 
        
      
 
Sets the number of random restarts to use when solving a request. 
- Parameters
 - 
  
    | [in] | restarts | The number of random restarts to use.  | 
  
   
< Add one since we do at least one iteration without random restart. 
Definition at line 36 of file ik.cpp.
 
 
◆ setTask()
  
  
      
        
          | void IKSolver::setTask  | 
          ( | 
          unsigned int  | 
          task,  | 
         
        
           | 
           | 
          Index  | 
          index,  | 
         
        
           | 
           | 
          bool  | 
          active  | 
         
        
           | 
          ) | 
           |  | 
         
       
   | 
  
protected   | 
  
 
Sets the specific index component of a task to active. 
- Parameters
 - 
  
    | [in] | task | Index of task to set.  | 
    | [in] | index | Index of component to set.  | 
    | [in] | active | Value to set component to.  | 
  
   
Definition at line 98 of file ik.cpp.
 
 
◆ lambda_
  
  
      
        
          | double se2ez::IKSolver::lambda_ {0.01} | 
         
       
   | 
  
protected   | 
  
 
Lambda, WDLS constant. 
Definition at line 120 of file ik.h.
 
 
◆ max_
  
  
      
        
          | const KDL::JntArray se2ez::IKSolver::max_ | 
         
       
   | 
  
protected   | 
  
 
 
◆ min_
  
  
      
        
          | const KDL::JntArray se2ez::IKSolver::min_ | 
         
       
   | 
  
protected   | 
  
 
 
◆ n_
  
  
      
        
          | const unsigned int se2ez::IKSolver::n_ | 
         
       
   | 
  
protected   | 
  
 
Number of joint variables. 
Definition at line 111 of file ik.h.
 
 
◆ restarts_
  
  
      
        
          | unsigned int se2ez::IKSolver::restarts_ {10} | 
         
       
   | 
  
protected   | 
  
 
Number of random restarts. 
Definition at line 122 of file ik.h.
 
 
◆ robot_
Reference to robot. 
Definition at line 113 of file ik.h.
 
 
◆ t_
  
  
      
        
          | const unsigned int se2ez::IKSolver::t_ | 
         
       
   | 
  
protected   | 
  
 
Number of tasks. 
Definition at line 112 of file ik.h.
 
 
◆ tasks_
  
  
      
        
          | KDL::MatrixXd se2ez::IKSolver::tasks_ | 
         
       
   | 
  
protected   | 
  
 
Task weights. 
Definition at line 119 of file ik.h.
 
 
◆ weights_
  
  
      
        
          | KDL::MatrixXd se2ez::IKSolver::weights_ | 
         
       
   | 
  
protected   | 
  
 
Joint variable weights. 
Definition at line 118 of file ik.h.
 
 
The documentation for this class was generated from the following files:
- /home/zak/code/se2ez_work/include/se2ez/core/ik.h
 
- /home/zak/code/se2ez_work/src/core/ik.cpp