|
Robowflex
v0.1
Making MoveIt Easy
|
An OMPL state space for robowflex::darts::World. Can do motion planning for any of the robots or structures in the world. More...
#include <space.h>
Inheritance diagram for robowflex::darts::StateSpace:Classes | |
| class | StateSampler |
| Sampler for robowflex::darts::StateSpace. More... | |
| class | StateType |
| State type for the robowflex::darts::StateSpace. More... | |
Public Member Functions | |
| void | setMetricSpace (bool metric) |
Constructor and Setup | |
| StateSpace (WorldPtr world) | |
| Constructor. More... | |
| void | addGroup (const std::string &name, const std::string &group, std::size_t cyclic=0) |
| Add a group to be planned for. More... | |
| void | addGroupFromJoints (const std::string &group_name, const std::vector< dart::dynamics::Joint * > &joints, std::size_t cyclic=0) |
| Add a group to be planned for. More... | |
World State | |
| void | setWorldState (WorldPtr world, const ompl::base::State *state) const |
| Set the state of a world from an OMPL state. More... | |
| void | setWorldState (WorldPtr world, const Eigen::Ref< const Eigen::VectorXd > &x) const |
| Set the state of a world from a configuration. More... | |
| void | getWorldState (WorldPtr world, ompl::base::State *state) const |
| Get the state of a world in an OMPL state. More... | |
| void | getWorldState (WorldPtr world, Eigen::Ref< Eigen::VectorXd > x) const |
| Get the state of a world in a configuration vector. More... | |
| void | setWorldGroupState (WorldPtr world, const std::string &group_name, const Eigen::Ref< const Eigen::VectorXd > &x) const |
| Set the state of a world from a configuration of a group. More... | |
| void | getWorldGroupState (WorldPtr world, const std::string &group_name, Eigen::Ref< Eigen::VectorXd > x) const |
| Get the group state of a world. More... | |
Getters and Setters | |
| WorldPtr | getWorld () |
| Get underlying world. More... | |
| const WorldPtr & | getWorldConst () const |
| Get underlying world. More... | |
| std::vector< std::pair< std::size_t, std::size_t > > | getIndices () const |
| Get the set of indices that is being planned for. Pairs of skeleton index and joint index. More... | |
| Eigen::VectorXd | getLowerBound () const |
| Get a vector of the lower joint bounds for the space. More... | |
| Eigen::VectorXd | getUpperBound () const |
| Get a vector of the upper joint bounds for the space. More... | |
| JointPtr | getJoint (std::size_t index) const |
| Get a joint that is being planned for. More... | |
| JointPtr | getJoint (const std::string &name) const |
| Get a joint that is being planned for. More... | |
| const std::vector< JointPtr > & | getJoints () const |
| Get a vector of the joints being planned for. More... | |
| void | getGroupState (const std::string &group, const ompl::base::State *state, Eigen::Ref< Eigen::VectorXd > v) const |
| From a full state, get only the state of a group. More... | |
| void | setGroupState (const std::string &group, ompl::base::State *state, const Eigen::Ref< const Eigen::VectorXd > &v) const |
| Set a (sub)group state in a full state. More... | |
| std::size_t | getGroupDimension (const std::string &group) const |
| Get the dimension of joint variables for a subgroup. More... | |
| std::vector< std::string > | getGroups () const |
| Get the names of all groups managed by this space. More... | |
| std::vector< std::string > | getGroupDofNames (const std::string &group_name) const |
| Get the names of each of the dof controlled by a group. More... | |
OMPL StateSpace Methods | |
| bool | isMetricSpace () const override |
| void | enforceBounds (ompl::base::State *state) const override |
| bool | satisfiesBounds (const ompl::base::State *state) const override |
| double | distance (const ompl::base::State *state1, const ompl::base::State *state2) const override |
| double | getMaximumExtent () const override |
| bool | equalStates (const ompl::base::State *state1, const ompl::base::State *state2) const override |
| void | interpolate (const ompl::base::State *from, const ompl::base::State *to, double t, ompl::base::State *state) const override |
| ompl::base::StateSamplerPtr | allocDefaultStateSampler () const override |
| ompl::base::State * | allocState () const override |
| void | freeState (ompl::base::State *state) const override |
Public Attributes | |
| friend | Joint |
| friend | RnJoint |
| friend | StateSampler |
Protected Member Functions | |
| void | addJoint (const std::string &group_name, const JointPtr &joint) |
| void | addJointToGroup (const std::string &group_name, const JointPtr &joint) |
Protected Attributes | |
| WorldPtr | world_ |
| World to use for planning. More... | |
| std::set< dart::dynamics::Joint * > | jointset_ |
| Set of joints used in planning. More... | |
| std::vector< std::size_t > | indices_ |
| Vector of indices for planning. More... | |
| bool | metric_ {true} |
| Is this space all Rn? More... | |
| std::vector< JointPtr > | joints_ |
| Vector of all joints used in planning. More... | |
| ompl::RNG | rng_ |
| Random number generator. More... | |
| std::map< std::string, std::vector< JointPtr > > | group_joints_ |
| Joints belonging to a group. More... | |
| std::map< std::string, std::size_t > | group_dimension_ |
| Dimension of the group. More... | |
An OMPL state space for robowflex::darts::World. Can do motion planning for any of the robots or structures in the world.
| StateSpace::StateSpace | ( | WorldPtr | world | ) |
Constructor.
| [in] | world | World to plan for. |
Definition at line 56 of file space.cpp.
| void StateSpace::addGroup | ( | const std::string & | name, |
| const std::string & | group, | ||
| std::size_t | cyclic = 0 |
||
| ) |
Add a group to be planned for.
| [in] | name | Name of the robot that has the group. |
| [in] | group | Group to plan for. |
| [in] | cyclic | If >0, will flatten rotational groups (i.e., SO(2), SO(3)) into Rn spaces, where n is cyclic. |
Definition at line 65 of file space.cpp.
| void StateSpace::addGroupFromJoints | ( | const std::string & | group_name, |
| const std::vector< dart::dynamics::Joint * > & | joints, | ||
| std::size_t | cyclic = 0 |
||
| ) |
Add a group to be planned for.
| [in] | group_name | Name of the new group. |
| [in] | joints | Joints to add to this group. |
| [in] | cyclic | If >0, will flatten rotational groups (i.e., SO(2), SO(3)) into Rn spaces, where n is cyclic. |
Definition at line 78 of file space.cpp.
|
protected |
Definition at line 209 of file space.cpp.
|
protected |
|
override |
|
override |
|
override |
|
override |
|
override |
Definition at line 335 of file space.cpp.
|
override |
| std::size_t StateSpace::getGroupDimension | ( | const std::string & | group | ) | const |
Get the dimension of joint variables for a subgroup.
| std::vector< std::string > StateSpace::getGroupDofNames | ( | const std::string & | group_name | ) | const |
| std::vector< std::string > StateSpace::getGroups | ( | ) | const |
| void StateSpace::getGroupState | ( | const std::string & | group, |
| const ompl::base::State * | state, | ||
| Eigen::Ref< Eigen::VectorXd > | v | ||
| ) | const |
| std::vector< std::pair< std::size_t, std::size_t > > StateSpace::getIndices | ( | ) | const |
| JointPtr StateSpace::getJoint | ( | const std::string & | name | ) | const |
Get a joint that is being planned for.
| JointPtr StateSpace::getJoint | ( | std::size_t | index | ) | const |
| const std::vector< JointPtr > & StateSpace::getJoints | ( | ) | const |
| Eigen::VectorXd StateSpace::getLowerBound | ( | ) | const |
|
override |
| Eigen::VectorXd StateSpace::getUpperBound | ( | ) | const |
| WorldPtr StateSpace::getWorld | ( | ) |
| const WorldPtr & StateSpace::getWorldConst | ( | ) | const |
| void StateSpace::getWorldGroupState | ( | WorldPtr | world, |
| const std::string & | group_name, | ||
| Eigen::Ref< Eigen::VectorXd > | x | ||
| ) | const |
| void StateSpace::getWorldState | ( | WorldPtr | world, |
| Eigen::Ref< Eigen::VectorXd > | x | ||
| ) | const |
| void StateSpace::getWorldState | ( | WorldPtr | world, |
| ompl::base::State * | state | ||
| ) | const |
Get the state of a world in an OMPL state.
| [in] | world | World to get state of. |
| [out] | state | State to fill. |
Definition at line 241 of file space.cpp.
|
override |
|
override |
|
override |
| void StateSpace::setGroupState | ( | const std::string & | group, |
| ompl::base::State * | state, | ||
| const Eigen::Ref< const Eigen::VectorXd > & | v | ||
| ) | const |
| void StateSpace::setMetricSpace | ( | bool | metric | ) |
| void StateSpace::setWorldGroupState | ( | WorldPtr | world, |
| const std::string & | group_name, | ||
| const Eigen::Ref< const Eigen::VectorXd > & | x | ||
| ) | const |
| void StateSpace::setWorldState | ( | WorldPtr | world, |
| const Eigen::Ref< const Eigen::VectorXd > & | x | ||
| ) | const |
| void StateSpace::setWorldState | ( | WorldPtr | world, |
| const ompl::base::State * | state | ||
| ) | const |
Set the state of a world from an OMPL state.
| [out] | world | World to set state of. |
| [in] | state | State to set world. |
Definition at line 224 of file space.cpp.
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |