Go to the documentation of this file.
29 #include <VirtualRobot/Nodes/RobotNode.h>
61 VirtualRobot::RobotNodeSetPtr
rns;
62 VirtualRobot::RobotNodePtr
elbow;
64 VirtualRobot::RobotNodePtr
tcp;
78 static constexpr
float MMM_L = 1700;
98 NaturalIK(std::string side, Eigen::Vector3f shoulderPos = Eigen::Vector3f::Zero(),
float scale = 1);
133 Eigen::Vector3f shoulderPos;
136 int soechtingIterations = 2;
Brief description of class natik.
static constexpr float MMM_SHOULDER_POS
NaturalDiffIK::Result calculateIK(const Eigen::Matrix4f &targetPose, ArmJoints arm, NaturalIK::Parameters params=NaturalIK::Parameters())
VirtualRobot::RobotNodePtr shoulder
VirtualRobot::RobotNodePtr tcp
static constexpr float MMM_LOWER_ARM_LENGTH
VirtualRobot::RobotNodePtr elbow
Vertex target(const detail::edge_base< Directed, Vertex > &e, const PCG &)
static constexpr float MMM_L
SoechtingAngles CalculateSoechtingAngles(Eigen::Vector3f target)
NaturalIK::CalculateSoechtingAngles.
static constexpr float MMM_LE2LW
static constexpr float MMM_LSC2LS
void setLowerArmLength(float value)
std::shared_ptr< class NaturalIK > NaturalIKPtr
NaturalIK(std::string side, Eigen::Vector3f shoulderPos=Eigen::Vector3f::Zero(), float scale=1)
std::shared_ptr< Value > value()
void setUpperArmLength(float value)
NaturalIKProvider(const NaturalIK &natik, const NaturalIK::ArmJoints &arm, const NaturalDiffIK::Mode &setOri, const NaturalIK::Parameters ¶ms=NaturalIK::Parameters())
void setScale(float scale)
SoechtingForwardPositions forwardKinematics(SoechtingAngles sa)
NaturalDiffIK::Parameters diffIKparams
NaturalDiffIK::Result calculateIKpos(const Eigen::Vector3f &targetPos, ArmJoints arm, NaturalIK::Parameters params=NaturalIK::Parameters())
float getLowerArmLength() const
VirtualRobot::RobotNodeSetPtr rns
static constexpr float MMM_UPPER_ARM_LENGTH
static constexpr float MMM_CLAVICULAR_WIDTH
Eigen::Vector3f getShoulderPos()
MatrixXX< 4, 4, float > Matrix4f
std::optional< float > minimumElbowHeight
static constexpr float MMM_BT2LSC
DiffIKResult SolveAbsolute(const Eigen::Matrix4f &targetPose)
DiffIKResult SolveRelative(const Eigen::Matrix4f &targetPose, const Eigen::VectorXf &startJointValues)
NaturalIK::SoechtingForwardPositions solveSoechtingIK(const Eigen::Vector3f &targetPos, std::optional< float > minElbowHeight=std::nullopt)
This file offers overloads of toIce() and fromIce() functions for STL container types.
static constexpr float MMM_LS2LE
SoechtingAngles soechtingAngles
float getUpperArmLength() const