|
| OFKTStateSolver (const tesseract_scene_graph::SceneGraph &scene_graph, const std::string &prefix="") |
|
| OFKTStateSolver (const std::string &root_name) |
|
| ~OFKTStateSolver () override=default |
|
| OFKTStateSolver (const OFKTStateSolver &other) |
|
OFKTStateSolver & | operator= (const OFKTStateSolver &other) |
|
| OFKTStateSolver (OFKTStateSolver &&)=delete |
|
OFKTStateSolver & | operator= (OFKTStateSolver &&)=delete |
|
void | setRevision (int revision) override final |
| Set the state solver revision number. More...
|
|
int | getRevision () const override final |
| Get the state solver revision number. More...
|
|
void | setState (const Eigen::Ref< const Eigen::VectorXd > &joint_values) override final |
| Set the current state of the solver. More...
|
|
void | setState (const std::unordered_map< std::string, double > &joint_values) override final |
| Set the current state of the solver. More...
|
|
void | setState (const std::vector< std::string > &joint_names, const Eigen::Ref< const Eigen::VectorXd > &joint_values) override final |
|
SceneState | getState (const Eigen::Ref< const Eigen::VectorXd > &joint_values) const override final |
| Get the state of the solver given the joint values. More...
|
|
SceneState | getState (const std::unordered_map< std::string, double > &joint_values) const override final |
| Get the state of the scene for a given set or subset of joint values. More...
|
|
SceneState | getState (const std::vector< std::string > &joint_names, const Eigen::Ref< const Eigen::VectorXd > &joint_values) const override final |
|
SceneState | getState () const override final |
| Get the current state of the scene. More...
|
|
SceneState | getRandomState () const override final |
| Get the random state of the environment. More...
|
|
Eigen::MatrixXd | getJacobian (const Eigen::Ref< const Eigen::VectorXd > &joint_values, const std::string &link_name) const override final |
| Get the jacobian of the solver given the joint values. More...
|
|
Eigen::MatrixXd | getJacobian (const std::unordered_map< std::string, double > &joints_values, const std::string &link_name) const override final |
| Get the jacobian of the scene for a given set or subset of joint values. More...
|
|
Eigen::MatrixXd | getJacobian (const std::vector< std::string > &joint_names, const Eigen::Ref< const Eigen::VectorXd > &joint_values, const std::string &link_name) const override final |
|
std::vector< std::string > | getJointNames () const override final |
| Get the vector of joint names. More...
|
|
std::vector< std::string > | getActiveJointNames () const override final |
| Get the vector of joint names which align with the limits. More...
|
|
std::string | getBaseLinkName () const override final |
| Get the base link name. More...
|
|
std::vector< std::string > | getLinkNames () const override final |
| Get the vector of link names. More...
|
|
std::vector< std::string > | getActiveLinkNames () const override final |
| Get the vector of active link names. More...
|
|
std::vector< std::string > | getStaticLinkNames () const override final |
| Get a vector of static link names in the environment. More...
|
|
bool | isActiveLinkName (const std::string &link_name) const override final |
| Check if link is an active link. More...
|
|
bool | hasLinkName (const std::string &link_name) const override final |
| Check if link name exists. More...
|
|
tesseract_common::VectorIsometry3d | getLinkTransforms () const override final |
| Get all of the links transforms. More...
|
|
Eigen::Isometry3d | getLinkTransform (const std::string &link_name) const override final |
| Get the transform corresponding to the link. More...
|
|
Eigen::Isometry3d | getRelativeLinkTransform (const std::string &from_link_name, const std::string &to_link_name) const override final |
| Get transform between two links using the current state. More...
|
|
tesseract_common::KinematicLimits | getLimits () const override final |
| Getter for kinematic limits. More...
|
|
bool | addLink (const Link &link, const Joint &joint) override final |
| Adds a link/joint to the solver. More...
|
|
bool | moveLink (const Joint &joint) override final |
| Move a link. More...
|
|
bool | removeLink (const std::string &name) override final |
| Removes a link from the graph. More...
|
|
bool | replaceJoint (const Joint &joint) override final |
| Replace and existing joint with the provided one. More...
|
|
bool | removeJoint (const std::string &name) override final |
| Removes a joint from the graph. More...
|
|
bool | moveJoint (const std::string &name, const std::string &parent_link) override final |
| Move joint to new parent link. More...
|
|
bool | changeJointOrigin (const std::string &name, const Eigen::Isometry3d &new_origin) override final |
| Changes the "origin" transform of the joint and recomputes the associated edge. More...
|
|
bool | changeJointPositionLimits (const std::string &name, double lower, double upper) override final |
| Changes the position limits associated with a joint. More...
|
|
bool | changeJointVelocityLimits (const std::string &name, double limit) override final |
| Changes the velocity limits associated with a joint. More...
|
|
bool | changeJointAccelerationLimits (const std::string &name, double limit) override final |
| Changes the acceleration limits associated with a joint. More...
|
|
bool | insertSceneGraph (const SceneGraph &scene_graph, const Joint &joint, const std::string &prefix="") override final |
| Merge a scene into the current solver. More...
|
|
StateSolver::UPtr | clone () const override final |
| This should clone the object so it may be used in a multi threaded application where each thread would clone the solver. More...
|
|
| MutableStateSolver ()=default |
|
| ~MutableStateSolver () override=default |
|
| MutableStateSolver (const MutableStateSolver &)=default |
|
MutableStateSolver & | operator= (const MutableStateSolver &)=default |
|
| MutableStateSolver (MutableStateSolver &&)=default |
|
MutableStateSolver & | operator= (MutableStateSolver &&)=default |
|
virtual void | setRevision (int revision)=0 |
| Set the state solver revision number. More...
|
|
virtual int | getRevision () const =0 |
| Get the state solver revision number. More...
|
|
virtual bool | addLink (const Link &link, const Joint &joint)=0 |
| Adds a link/joint to the solver. More...
|
|
virtual bool | moveLink (const Joint &joint)=0 |
| Move a link. More...
|
|
virtual bool | removeLink (const std::string &name)=0 |
| Removes a link from the graph. More...
|
|
virtual bool | replaceJoint (const Joint &joint)=0 |
| Replace and existing joint with the provided one. More...
|
|
virtual bool | removeJoint (const std::string &name)=0 |
| Removes a joint from the graph. More...
|
|
virtual bool | moveJoint (const std::string &name, const std::string &parent_link)=0 |
| Move joint to new parent link. More...
|
|
virtual bool | changeJointOrigin (const std::string &name, const Eigen::Isometry3d &new_origin)=0 |
| Changes the "origin" transform of the joint and recomputes the associated edge. More...
|
|
virtual bool | changeJointPositionLimits (const std::string &name, double lower, double upper)=0 |
| Changes the position limits associated with a joint. More...
|
|
virtual bool | changeJointVelocityLimits (const std::string &name, double limit)=0 |
| Changes the velocity limits associated with a joint. More...
|
|
virtual bool | changeJointAccelerationLimits (const std::string &name, double limit)=0 |
| Changes the acceleration limits associated with a joint. More...
|
|
virtual bool | insertSceneGraph (const SceneGraph &scene_graph, const Joint &joint, const std::string &prefix="")=0 |
| Merge a scene into the current solver. More...
|
|
| StateSolver ()=default |
|
virtual | ~StateSolver ()=default |
|
| StateSolver (const StateSolver &)=default |
|
StateSolver & | operator= (const StateSolver &)=default |
|
| StateSolver (StateSolver &&)=default |
|
StateSolver & | operator= (StateSolver &&)=default |
|
virtual StateSolver::UPtr | clone () const =0 |
| This should clone the object so it may be used in a multi threaded application where each thread would clone the solver. More...
|
|
virtual void | setState (const Eigen::Ref< const Eigen::VectorXd > &joint_values)=0 |
| Set the current state of the solver. More...
|
|
virtual void | setState (const std::unordered_map< std::string, double > &joint_values)=0 |
| Set the current state of the solver. More...
|
|
virtual void | setState (const std::vector< std::string > &joint_names, const Eigen::Ref< const Eigen::VectorXd > &joint_values)=0 |
|
virtual SceneState | getState (const Eigen::Ref< const Eigen::VectorXd > &joint_values) const =0 |
| Get the state of the solver given the joint values. More...
|
|
virtual SceneState | getState (const std::unordered_map< std::string, double > &joint_values) const =0 |
| Get the state of the scene for a given set or subset of joint values. More...
|
|
virtual SceneState | getState (const std::vector< std::string > &joint_names, const Eigen::Ref< const Eigen::VectorXd > &joint_values) const =0 |
|
virtual SceneState | getState () const =0 |
| Get the current state of the scene. More...
|
|
virtual Eigen::MatrixXd | getJacobian (const Eigen::Ref< const Eigen::VectorXd > &joint_values, const std::string &link_name) const =0 |
| Get the jacobian of the solver given the joint values. More...
|
|
virtual Eigen::MatrixXd | getJacobian (const std::unordered_map< std::string, double > &joint_values, const std::string &link_name) const =0 |
| Get the jacobian of the scene for a given set or subset of joint values. More...
|
|
virtual Eigen::MatrixXd | getJacobian (const std::vector< std::string > &joint_names, const Eigen::Ref< const Eigen::VectorXd > &joint_values, const std::string &link_name) const =0 |
|
virtual SceneState | getRandomState () const =0 |
| Get the random state of the environment. More...
|
|
virtual std::vector< std::string > | getJointNames () const =0 |
| Get the vector of joint names. More...
|
|
virtual std::vector< std::string > | getActiveJointNames () const =0 |
| Get the vector of joint names which align with the limits. More...
|
|
virtual std::string | getBaseLinkName () const =0 |
| Get the base link name. More...
|
|
virtual std::vector< std::string > | getLinkNames () const =0 |
| Get the vector of link names. More...
|
|
virtual std::vector< std::string > | getActiveLinkNames () const =0 |
| Get the vector of active link names. More...
|
|
virtual std::vector< std::string > | getStaticLinkNames () const =0 |
| Get a vector of static link names in the environment. More...
|
|
virtual bool | isActiveLinkName (const std::string &link_name) const =0 |
| Check if link is an active link. More...
|
|
virtual bool | hasLinkName (const std::string &link_name) const =0 |
| Check if link name exists. More...
|
|
virtual tesseract_common::VectorIsometry3d | getLinkTransforms () const =0 |
| Get all of the links transforms. More...
|
|
virtual Eigen::Isometry3d | getLinkTransform (const std::string &link_name) const =0 |
| Get the transform corresponding to the link. More...
|
|
virtual Eigen::Isometry3d | getRelativeLinkTransform (const std::string &from_link_name, const std::string &to_link_name) const =0 |
| Get transform between two links using the current state. More...
|
|
virtual tesseract_common::KinematicLimits | getLimits () const =0 |
| Getter for kinematic limits. More...
|
|
|
bool | initHelper (const tesseract_scene_graph::SceneGraph &scene_graph, const std::string &prefix) |
|
void | clear () |
|
void | loadActiveLinkNamesRecursive (std::vector< std::string > &active_link_names, const OFKTNode *node, bool active) const |
| load the active link names More...
|
|
void | loadStaticLinkNamesRecursive (std::vector< std::string > &static_link_names, const OFKTNode *node) const |
| load the static link names More...
|
|
void | update (OFKTNode *node, bool update_required) |
| This update the local and world transforms. More...
|
|
void | update (SceneState &state, const OFKTNode *node, Eigen::Isometry3d parent_world_tf, bool update_required) const |
| This is a const version of the function above. More...
|
|
Eigen::MatrixXd | calcJacobianHelper (const std::unordered_map< std::string, double > &joints, const std::string &link_name) const |
| Given a set of joint values calculate the jacobian for the provided link_name. More...
|
|
void | cloneHelper (OFKTStateSolver &cloned, const OFKTNode *node) const |
| A helper function used for cloning the OFKTStateSolver. More...
|
|
void | addNode (const Joint &joint, const std::string &joint_name, const std::string &parent_link_name, const std::string &child_link_name, std::vector< JointLimits::ConstPtr > &new_joint_limits) |
| Add a node to the tree. More...
|
|
void | removeNode (OFKTNode *node, std::vector< std::string > &removed_links, std::vector< std::string > &removed_joints, std::vector< std::string > &removed_active_joints, std::vector< long > &removed_active_joints_indices) |
| Remove a node and all of its children. More...
|
|
void | moveLinkHelper (std::vector< JointLimits::ConstPtr > &new_joint_limits, const Joint &joint) |
| This a helper function for moving a link. More...
|
|
void | replaceJointHelper (std::vector< JointLimits::ConstPtr > &new_joint_limits, const Joint &joint) |
| This is a helper function for replacing a joint. More...
|
|
void | removeJointHelper (const std::vector< std::string > &removed_links, const std::vector< std::string > &removed_joints, const std::vector< std::string > &removed_active_joints, const std::vector< long > &removed_active_joints_indices) |
| This will clean up member variables joint_names_ and limits_. More...
|
|
void | addNewJointLimits (const std::vector< JointLimits::ConstPtr > &new_joint_limits) |
| appends the new joint limits More...
|
|
An implementation of the Optimized Forward Kinematic Tree as a stat solver.
Starke, S., Hendrich, N., & Zhang, J. (2018). A Forward Kinematics Data Structure for Efficient Evolutionary Inverse Kinematics. In Computational Kinematics (pp. 560-568). Springer, Cham.