rbd::InverseKinematics Class Reference

#include <RBDyn/RBDyn/IK.h>

Public Member Functions

 InverseKinematics (const MultiBody &mb, int ef_index)
 
bool inverseKinematics (const MultiBody &mb, MultiBodyConfig &mbc, const sva::PTransformd &ef_target)
 
bool sInverseKinematics (const MultiBody &mb, MultiBodyConfig &mbc, const sva::PTransformd &ef_target)
 

Public Attributes

int max_iterations_
 Find q that minimizes the distance between ef and ef_target. More...
 
double lambda_
 
double threshold_
 
double almost_zero_
 

Detailed Description

Inverse Kinematics algorithm.

Constructor & Destructor Documentation

◆ InverseKinematics()

rbd::InverseKinematics::InverseKinematics ( const MultiBody mb,
int  ef_index 
)
Parameters
mbMultiBody associated with this algorithm.

Member Function Documentation

◆ inverseKinematics()

bool rbd::InverseKinematics::inverseKinematics ( const MultiBody mb,
MultiBodyConfig mbc,
const sva::PTransformd &  ef_target 
)

Compute the inverse kinematics.

Parameters
mbMultiBody used has model.
mbcUse q generalized position vector
Returns
bool if computation has converged Fill q with new generalized position, update bodyPosW, jointConfig and parentToSon. All computations are done in-place : even if computation does not converge, mbc will be modified.

◆ sInverseKinematics()

bool rbd::InverseKinematics::sInverseKinematics ( const MultiBody mb,
MultiBodyConfig mbc,
const sva::PTransformd &  ef_target 
)

safe version of

See also
inverseKinematics.
Exceptions
std::domain_errorIf mb doesn't match mbc.

Member Data Documentation

◆ almost_zero_

double rbd::InverseKinematics::almost_zero_

◆ lambda_

double rbd::InverseKinematics::lambda_

◆ max_iterations_

int rbd::InverseKinematics::max_iterations_

Find q that minimizes the distance between ef and ef_target.

Returns
Bool if convergence has been reached

◆ threshold_

double rbd::InverseKinematics::threshold_

The documentation for this class was generated from the following file: