|
| | 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.