#include <trac_ik.hpp>
|
int | CartToJnt (const KDL::JntArray &q_init, const KDL::Frame &p_in, KDL::JntArray &q_out, const KDL::Twist &bounds=KDL::Twist::Zero()) |
|
bool | getKDLChain (KDL::Chain &chain_) |
|
bool | getKDLLimits (KDL::JntArray &lb_, KDL::JntArray &ub_) |
|
bool | getSolutions (std::vector< KDL::JntArray > &solutions_) |
|
bool | getSolutions (std::vector< KDL::JntArray > &solutions_, std::vector< std::pair< double, uint > > &errors_) |
|
bool | setKDLLimits (KDL::JntArray &lb_, KDL::JntArray &ub_) |
|
void | SetSolveType (SolveType _type) |
|
| TRAC_IK (const KDL::Chain &_chain, const KDL::JntArray &_q_min, const KDL::JntArray &_q_max, double _maxtime=0.005, double _eps=1e-5, SolveType _type=Speed) |
|
| TRAC_IK (const std::string &base_link, const std::string &tip_link, const std::string &URDF_param="/robot_description", double _maxtime=0.005, double _eps=1e-5, SolveType _type=Speed) |
|
| ~TRAC_IK () |
|
|
static double | JointErr (const KDL::JntArray &arr1, const KDL::JntArray &arr2) |
|
|
void | initialize () |
|
double | manipPenalty (const KDL::JntArray &) |
|
double | ManipValue1 (const KDL::JntArray &) |
|
double | ManipValue2 (const KDL::JntArray &) |
|
bool | myEqual (const KDL::JntArray &a, const KDL::JntArray &b) |
|
void | normalize_limits (const KDL::JntArray &seed, KDL::JntArray &solution) |
|
void | normalize_seed (const KDL::JntArray &seed, KDL::JntArray &solution) |
|
bool | runKDL (const KDL::JntArray &q_init, const KDL::Frame &p_in) |
|
bool | runNLOPT (const KDL::JntArray &q_init, const KDL::Frame &p_in) |
|
template<typename T1 , typename T2 > |
bool | runSolver (T1 &solver, T2 &other_solver, const KDL::JntArray &q_init, const KDL::Frame &p_in) |
|
bool | unique_solution (const KDL::JntArray &sol) |
|
|
static double | fRand (double min, double max) |
|
Definition at line 75 of file trac_ik.hpp.
◆ TRAC_IK() [1/2]
TRAC_IK::TRAC_IK::TRAC_IK |
( |
const KDL::Chain & |
_chain, |
|
|
const KDL::JntArray & |
_q_min, |
|
|
const KDL::JntArray & |
_q_max, |
|
|
double |
_maxtime = 0.005 , |
|
|
double |
_eps = 1e-5 , |
|
|
SolveType |
_type = Speed |
|
) |
| |
◆ TRAC_IK() [2/2]
TRAC_IK::TRAC_IK::TRAC_IK |
( |
const std::string & |
base_link, |
|
|
const std::string & |
tip_link, |
|
|
const std::string & |
URDF_param = "/robot_description" , |
|
|
double |
_maxtime = 0.005 , |
|
|
double |
_eps = 1e-5 , |
|
|
SolveType |
_type = Speed |
|
) |
| |
◆ ~TRAC_IK()
TRAC_IK::TRAC_IK::~TRAC_IK |
( |
| ) |
|
◆ CartToJnt()
int TRAC_IK::TRAC_IK::CartToJnt |
( |
const KDL::JntArray & |
q_init, |
|
|
const KDL::Frame & |
p_in, |
|
|
KDL::JntArray & |
q_out, |
|
|
const KDL::Twist & |
bounds = KDL::Twist::Zero() |
|
) |
| |
◆ fRand()
static double TRAC_IK::TRAC_IK::fRand |
( |
double |
min, |
|
|
double |
max |
|
) |
| |
|
inlinestaticprivate |
◆ getKDLChain()
bool TRAC_IK::TRAC_IK::getKDLChain |
( |
KDL::Chain & |
chain_ | ) |
|
|
inline |
◆ getKDLLimits()
bool TRAC_IK::TRAC_IK::getKDLLimits |
( |
KDL::JntArray & |
lb_, |
|
|
KDL::JntArray & |
ub_ |
|
) |
| |
|
inline |
◆ getSolutions() [1/2]
bool TRAC_IK::TRAC_IK::getSolutions |
( |
std::vector< KDL::JntArray > & |
solutions_ | ) |
|
|
inline |
◆ getSolutions() [2/2]
bool TRAC_IK::TRAC_IK::getSolutions |
( |
std::vector< KDL::JntArray > & |
solutions_, |
|
|
std::vector< std::pair< double, uint > > & |
errors_ |
|
) |
| |
|
inline |
◆ initialize()
void TRAC_IK::TRAC_IK::initialize |
( |
| ) |
|
|
private |
◆ JointErr()
static double TRAC_IK::TRAC_IK::JointErr |
( |
const KDL::JntArray & |
arr1, |
|
|
const KDL::JntArray & |
arr2 |
|
) |
| |
|
inlinestatic |
◆ manipPenalty()
double TRAC_IK::TRAC_IK::manipPenalty |
( |
const KDL::JntArray & |
arr | ) |
|
|
private |
◆ ManipValue1()
double TRAC_IK::TRAC_IK::ManipValue1 |
( |
const KDL::JntArray & |
arr | ) |
|
|
private |
◆ ManipValue2()
double TRAC_IK::TRAC_IK::ManipValue2 |
( |
const KDL::JntArray & |
arr | ) |
|
|
private |
◆ myEqual()
bool TRAC_IK::TRAC_IK::myEqual |
( |
const KDL::JntArray & |
a, |
|
|
const KDL::JntArray & |
b |
|
) |
| |
|
inlineprivate |
◆ normalize_limits()
void TRAC_IK::TRAC_IK::normalize_limits |
( |
const KDL::JntArray & |
seed, |
|
|
KDL::JntArray & |
solution |
|
) |
| |
|
private |
◆ normalize_seed()
void TRAC_IK::TRAC_IK::normalize_seed |
( |
const KDL::JntArray & |
seed, |
|
|
KDL::JntArray & |
solution |
|
) |
| |
|
private |
◆ runKDL()
bool TRAC_IK::TRAC_IK::runKDL |
( |
const KDL::JntArray & |
q_init, |
|
|
const KDL::Frame & |
p_in |
|
) |
| |
|
inlineprivate |
◆ runNLOPT()
bool TRAC_IK::TRAC_IK::runNLOPT |
( |
const KDL::JntArray & |
q_init, |
|
|
const KDL::Frame & |
p_in |
|
) |
| |
|
inlineprivate |
◆ runSolver()
template<typename T1 , typename T2 >
bool TRAC_IK::TRAC_IK::runSolver |
( |
T1 & |
solver, |
|
|
T2 & |
other_solver, |
|
|
const KDL::JntArray & |
q_init, |
|
|
const KDL::Frame & |
p_in |
|
) |
| |
|
private |
◆ setKDLLimits()
bool TRAC_IK::TRAC_IK::setKDLLimits |
( |
KDL::JntArray & |
lb_, |
|
|
KDL::JntArray & |
ub_ |
|
) |
| |
|
inline |
◆ SetSolveType()
void TRAC_IK::TRAC_IK::SetSolveType |
( |
SolveType |
_type | ) |
|
|
inline |
◆ unique_solution()
bool TRAC_IK::TRAC_IK::unique_solution |
( |
const KDL::JntArray & |
sol | ) |
|
|
private |
◆ bounds
KDL::Twist TRAC_IK::TRAC_IK::bounds |
|
private |
◆ chain
KDL::Chain TRAC_IK::TRAC_IK::chain |
|
private |
◆ eps
double TRAC_IK::TRAC_IK::eps |
|
private |
◆ errors
std::vector<std::pair<double, uint> > TRAC_IK::TRAC_IK::errors |
|
private |
◆ iksolver
◆ initialized
bool TRAC_IK::TRAC_IK::initialized |
|
private |
◆ jacsolver
std::unique_ptr<KDL::ChainJntToJacSolver> TRAC_IK::TRAC_IK::jacsolver |
|
private |
◆ lb
KDL::JntArray TRAC_IK::TRAC_IK::lb |
|
private |
◆ maxtime
double TRAC_IK::TRAC_IK::maxtime |
|
private |
◆ mtx_
std::mutex TRAC_IK::TRAC_IK::mtx_ |
|
private |
◆ nl_solver
◆ solutions
std::vector<KDL::JntArray> TRAC_IK::TRAC_IK::solutions |
|
private |
◆ solvetype
◆ start_time
boost::posix_time::ptime TRAC_IK::TRAC_IK::start_time |
|
private |
◆ task1
std::thread TRAC_IK::TRAC_IK::task1 |
|
private |
◆ task2
std::thread TRAC_IK::TRAC_IK::task2 |
|
private |
◆ types
◆ ub
KDL::JntArray TRAC_IK::TRAC_IK::ub |
|
private |
The documentation for this class was generated from the following files: