kinematics-dynamics
|
IK solver configuration strategy selector based on the overall displacement of all joints. More...
#include <ConfigurationSelector.hpp>
Public Member Functions | |
ConfigurationSelectorLeastOverallAngularDisplacement (const KDL::JntArray &qMin, const KDL::JntArray &qMax) | |
Constructor. More... | |
bool | findOptimalConfiguration (const KDL::JntArray &qGuess) override |
Analyzes available configurations and selects the optimal one. More... | |
Public Member Functions inherited from roboticslab::ConfigurationSelector | |
ConfigurationSelector (const KDL::JntArray &qMin, const KDL::JntArray &qMax) | |
Constructor. More... | |
virtual | ~ConfigurationSelector ()=default |
Destructor. | |
virtual bool | configure (const std::vector< KDL::JntArray > &solutions) |
Stores initial values for a specific pose. More... | |
virtual void | retrievePose (KDL::JntArray &q) const |
Queries computed joint values for the optimal configuration. More... | |
Protected Member Functions | |
std::vector< double > | getDiffs (const KDL::JntArray &qGuess, const Configuration &config) |
Obtains vector of differences between current and desired joint values. | |
Protected Attributes | |
int | lastValid |
Protected Attributes inherited from roboticslab::ConfigurationSelector | |
KDL::JntArray | _qMin |
KDL::JntArray | _qMax |
Configuration | optimalConfig |
std::vector< Configuration > | configs |
Static Protected Attributes | |
static const int | INVALID_CONFIG = -1 |
Selects the configuration that entails the lowest sum of displacements across all joints. Works best for all revolute/all prismatic chain types. If attainable, it retains the previous configuration after the first successful choice and discards all other configs for the rest of the instance's lifetime.
|
inline |
qMin | Joint array of minimum joint limits. |
qMax | Joint array of maximum joint limits. |
|
overridevirtual |
qGuess | Joint array of values for current robot position. |
Implements roboticslab::ConfigurationSelector.
Reimplemented in roboticslab::ConfigurationSelectorHumanoidGait.