IK_tools::BipIK Class Reference

#include <aig/postures.hpp>

Collaboration diagram for IK_tools::BipIK:

Public Member Functions

 BipIK ()
 
 BipIK (const BipedSettings &configuration)
 
void checkCompatibility ()
 
void configurateLegs ()
 
pin::SE3 computeBase (const xyzVector &com, const pin::SE3 &leftFoot, const pin::SE3 &rightFoot)
 
pin::SE3 computeBase (const xyzVector &com, const RotMatrix &baseRotation)
 
void solve (const xyzVector &com, const pin::SE3 &leftFoot, const pin::SE3 &rightFoot, const Eigen::VectorXd &q0, Eigen::VectorXd &posture)
 
void solve (const xyzVector &com, const RotMatrix &baseRotation, const pin::SE3 &leftFoot, const pin::SE3 &rightFoot, const Eigen::VectorXd &q0, Eigen::VectorXd &posture)
 
void solve (const pin::SE3 &base, const pin::SE3 &leftFoot, const pin::SE3 &rightFoot, const Eigen::VectorXd &q0, Eigen::VectorXd &posture)
 
void solve (const std::array< xyzVector, 3 > &coms, const std::array< pin::SE3, 3 > &leftFeet, const std::array< pin::SE3, 3 > &rightFeet, const Eigen::VectorXd &q0, Eigen::VectorXd &posture, Eigen::VectorXd &velocity, Eigen::VectorXd &acceleration, const double &dt)
 
void solve (const std::array< xyzVector, 3 > &coms, const std::array< RotMatrix, 3 > &baseRotations, const std::array< pin::SE3, 3 > &leftFeet, const std::array< pin::SE3, 3 > &rightFeet, const Eigen::VectorXd &q0, Eigen::VectorXd &posture, Eigen::VectorXd &velocity, Eigen::VectorXd &acceleration, const double &dt)
 
void solve (const std::array< pin::SE3, 3 > &bases, const std::array< pin::SE3, 3 > &leftFeet, const std::array< pin::SE3, 3 > &rightFeet, const Eigen::VectorXd &q0, Eigen::VectorXd &posture, Eigen::VectorXd &velocity, Eigen::VectorXd &acceleration, const double &dt)
 
Eigen::Vector2d computeCoP (pin::Data &data, const Eigen::VectorXd &posture, const Eigen::VectorXd &velocity, const Eigen::VectorXd &acceleration, bool flatHorizontalGround=true)
 
Eigen::Vector2d computeCoP (pin::Data &data, const Eigen::VectorXd &posture, const Eigen::VectorXd &velocity, const Eigen::VectorXd &acceleration, const Wrench &externalWrench, bool flatHorizontalGround=true)
 

Public Attributes

BipedSettings info
 
LegIG leftLeg
 
LegIG rightLeg
 
ArmIG leftArm
 
ArmIG rightArm
 

Constructor & Destructor Documentation

◆ BipIK() [1/2]

IK_tools::BipIK::BipIK ( )

◆ BipIK() [2/2]

IK_tools::BipIK::BipIK ( const BipedSettings configuration)

Member Function Documentation

◆ checkCompatibility()

void IK_tools::BipIK::checkCompatibility ( )

◆ computeBase() [1/2]

pin::SE3 IK_tools::BipIK::computeBase ( const xyzVector com,
const pin::SE3 &  leftFoot,
const pin::SE3 &  rightFoot 
)

◆ computeBase() [2/2]

pin::SE3 IK_tools::BipIK::computeBase ( const xyzVector com,
const RotMatrix baseRotation 
)

◆ computeCoP() [1/2]

Eigen::Vector2d IK_tools::BipIK::computeCoP ( pin::Data &  data,
const Eigen::VectorXd &  posture,
const Eigen::VectorXd &  velocity,
const Eigen::VectorXd &  acceleration,
bool  flatHorizontalGround = true 
)

◆ computeCoP() [2/2]

Eigen::Vector2d IK_tools::BipIK::computeCoP ( pin::Data &  data,
const Eigen::VectorXd &  posture,
const Eigen::VectorXd &  velocity,
const Eigen::VectorXd &  acceleration,
const Wrench externalWrench,
bool  flatHorizontalGround = true 
)

◆ configurateLegs()

void IK_tools::BipIK::configurateLegs ( )

◆ solve() [1/6]

void IK_tools::BipIK::solve ( const xyzVector com,
const pin::SE3 &  leftFoot,
const pin::SE3 &  rightFoot,
const Eigen::VectorXd &  q0,
Eigen::VectorXd &  posture 
)

◆ solve() [2/6]

void IK_tools::BipIK::solve ( const xyzVector com,
const RotMatrix baseRotation,
const pin::SE3 &  leftFoot,
const pin::SE3 &  rightFoot,
const Eigen::VectorXd &  q0,
Eigen::VectorXd &  posture 
)

◆ solve() [3/6]

void IK_tools::BipIK::solve ( const pin::SE3 &  base,
const pin::SE3 &  leftFoot,
const pin::SE3 &  rightFoot,
const Eigen::VectorXd &  q0,
Eigen::VectorXd &  posture 
)

◆ solve() [4/6]

void IK_tools::BipIK::solve ( const std::array< xyzVector, 3 > &  coms,
const std::array< pin::SE3, 3 > &  leftFeet,
const std::array< pin::SE3, 3 > &  rightFeet,
const Eigen::VectorXd &  q0,
Eigen::VectorXd &  posture,
Eigen::VectorXd &  velocity,
Eigen::VectorXd &  acceleration,
const double &  dt 
)

◆ solve() [5/6]

void IK_tools::BipIK::solve ( const std::array< xyzVector, 3 > &  coms,
const std::array< RotMatrix, 3 > &  baseRotations,
const std::array< pin::SE3, 3 > &  leftFeet,
const std::array< pin::SE3, 3 > &  rightFeet,
const Eigen::VectorXd &  q0,
Eigen::VectorXd &  posture,
Eigen::VectorXd &  velocity,
Eigen::VectorXd &  acceleration,
const double &  dt 
)

◆ solve() [6/6]

void IK_tools::BipIK::solve ( const std::array< pin::SE3, 3 > &  bases,
const std::array< pin::SE3, 3 > &  leftFeet,
const std::array< pin::SE3, 3 > &  rightFeet,
const Eigen::VectorXd &  q0,
Eigen::VectorXd &  posture,
Eigen::VectorXd &  velocity,
Eigen::VectorXd &  acceleration,
const double &  dt 
)

Member Data Documentation

◆ info

BipedSettings IK_tools::BipIK::info

◆ leftArm

ArmIG IK_tools::BipIK::leftArm

◆ leftLeg

LegIG IK_tools::BipIK::leftLeg

◆ rightArm

ArmIG IK_tools::BipIK::rightArm

◆ rightLeg

LegIG IK_tools::BipIK::rightLeg

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