A solver which can perform forward kinematics for a limited set of joints Returns the joint positions, joint axes and segment frames. More...
#include <treefksolverjointposaxis_partial.hpp>
Public Member Functions | |
const std::vector< std::string > | getSegmentNames () const |
const std::map< std::string, int > | getSegmentNameToIndex () const |
int | JntToCartFull (const JntArray &q_in, std::vector< Vector > &joint_pos, std::vector< Vector > &joint_axis, std::vector< Frame > &segment_frames) |
int | JntToCartPartial (const JntArray &q_in, std::vector< Vector > &joint_pos, std::vector< Vector > &joint_axis, std::vector< Frame > &segment_frames) const |
int | segmentNameToIndex (std::string name) const |
TreeFkSolverJointPosAxisPartial (const Tree &tree, const std::string &reference_frame, const std::vector< bool > &active_joints) | |
~TreeFkSolverJointPosAxisPartial () | |
Private Member Functions | |
void | assignSegmentNumber (const SegmentMap::const_iterator this_segment) |
int | treeRecursiveFK (const JntArray &q_in, std::vector< Vector > &joint_pos, std::vector< Vector > &joint_axis, std::vector< Frame > &segment_frames, const Frame &previous_frame, const SegmentMap::const_iterator this_segment, int segment_nr, int parent_segment_nr, bool active) |
Private Attributes | |
std::vector< bool > | active_joints_ |
std::vector< bool > | joint_calc_pos_axis_ |
std::vector< const TreeElement * > | joint_parent_ |
std::vector< int > | joint_parent_frame_nr_ |
int | num_joints_ |
int | num_segments_ |
std::string | reference_frame_ |
int | reference_frame_index_ |
std::vector< int > | segment_evaluation_order_ |
std::vector< Frame > | segment_frames_ |
std::map< std::string, int > | segment_name_to_index_ |
std::vector< std::string > | segment_names_ |
std::vector< const TreeElement * > | segment_parent_ |
std::vector< int > | segment_parent_frame_nr_ |
Tree | tree_ |
A solver which can perform forward kinematics for a limited set of joints Returns the joint positions, joint axes and segment frames.
Definition at line 50 of file treefksolverjointposaxis_partial.hpp.
KDL::TreeFkSolverJointPosAxisPartial::TreeFkSolverJointPosAxisPartial | ( | const Tree & | tree, |
const std::string & | reference_frame, | ||
const std::vector< bool > & | active_joints | ||
) |
Definition at line 44 of file treefksolverjointposaxis_partial.cpp.
Definition at line 72 of file treefksolverjointposaxis_partial.cpp.
void KDL::TreeFkSolverJointPosAxisPartial::assignSegmentNumber | ( | const SegmentMap::const_iterator | this_segment | ) | [private] |
Definition at line 180 of file treefksolverjointposaxis_partial.cpp.
const std::vector< std::string > KDL::TreeFkSolverJointPosAxisPartial::getSegmentNames | ( | ) | const |
Definition at line 193 of file treefksolverjointposaxis_partial.cpp.
const std::map< std::string, int > KDL::TreeFkSolverJointPosAxisPartial::getSegmentNameToIndex | ( | ) | const |
Definition at line 198 of file treefksolverjointposaxis_partial.cpp.
int KDL::TreeFkSolverJointPosAxisPartial::JntToCartFull | ( | const JntArray & | q_in, |
std::vector< Vector > & | joint_pos, | ||
std::vector< Vector > & | joint_axis, | ||
std::vector< Frame > & | segment_frames | ||
) |
Definition at line 76 of file treefksolverjointposaxis_partial.cpp.
int KDL::TreeFkSolverJointPosAxisPartial::JntToCartPartial | ( | const JntArray & | q_in, |
std::vector< Vector > & | joint_pos, | ||
std::vector< Vector > & | joint_axis, | ||
std::vector< Frame > & | segment_frames | ||
) | const |
Definition at line 108 of file treefksolverjointposaxis_partial.cpp.
int KDL::TreeFkSolverJointPosAxisPartial::segmentNameToIndex | ( | std::string | name | ) | const |
Definition at line 203 of file treefksolverjointposaxis_partial.cpp.
int KDL::TreeFkSolverJointPosAxisPartial::treeRecursiveFK | ( | const JntArray & | q_in, |
std::vector< Vector > & | joint_pos, | ||
std::vector< Vector > & | joint_axis, | ||
std::vector< Frame > & | segment_frames, | ||
const Frame & | previous_frame, | ||
const SegmentMap::const_iterator | this_segment, | ||
int | segment_nr, | ||
int | parent_segment_nr, | ||
bool | active | ||
) | [private] |
Definition at line 142 of file treefksolverjointposaxis_partial.cpp.
std::vector<bool> KDL::TreeFkSolverJointPosAxisPartial::active_joints_ [private] |
which are the joints that will change in calls to partial FK
Definition at line 83 of file treefksolverjointposaxis_partial.hpp.
std::vector<bool> KDL::TreeFkSolverJointPosAxisPartial::joint_calc_pos_axis_ [private] |
which joints should we calculate the position and axis for
Definition at line 84 of file treefksolverjointposaxis_partial.hpp.
std::vector<const TreeElement*> KDL::TreeFkSolverJointPosAxisPartial::joint_parent_ [private] |
the parent segment for each joint
Definition at line 82 of file treefksolverjointposaxis_partial.hpp.
std::vector<int> KDL::TreeFkSolverJointPosAxisPartial::joint_parent_frame_nr_ [private] |
the parent frame number for each joint
Definition at line 81 of file treefksolverjointposaxis_partial.hpp.
int KDL::TreeFkSolverJointPosAxisPartial::num_joints_ [private] |
Definition at line 74 of file treefksolverjointposaxis_partial.hpp.
int KDL::TreeFkSolverJointPosAxisPartial::num_segments_ [private] |
Definition at line 75 of file treefksolverjointposaxis_partial.hpp.
std::string KDL::TreeFkSolverJointPosAxisPartial::reference_frame_ [private] |
Definition at line 72 of file treefksolverjointposaxis_partial.hpp.
Definition at line 73 of file treefksolverjointposaxis_partial.hpp.
std::vector<int> KDL::TreeFkSolverJointPosAxisPartial::segment_evaluation_order_ [private] |
what order should we evaluate segments in
Definition at line 78 of file treefksolverjointposaxis_partial.hpp.
std::vector<Frame> KDL::TreeFkSolverJointPosAxisPartial::segment_frames_ [private] |
local cache of all segment frames needed for partial FK
Definition at line 77 of file treefksolverjointposaxis_partial.hpp.
std::map<std::string, int> KDL::TreeFkSolverJointPosAxisPartial::segment_name_to_index_ [private] |
Definition at line 70 of file treefksolverjointposaxis_partial.hpp.
std::vector<std::string> KDL::TreeFkSolverJointPosAxisPartial::segment_names_ [private] |
Definition at line 69 of file treefksolverjointposaxis_partial.hpp.
std::vector<const TreeElement*> KDL::TreeFkSolverJointPosAxisPartial::segment_parent_ [private] |
the parent segment for each segment
Definition at line 80 of file treefksolverjointposaxis_partial.hpp.
std::vector<int> KDL::TreeFkSolverJointPosAxisPartial::segment_parent_frame_nr_ [private] |
the parent frame number for each segment
Definition at line 79 of file treefksolverjointposaxis_partial.hpp.
Definition at line 71 of file treefksolverjointposaxis_partial.hpp.