Classes | |
class | rotation_spline |
class | effector_spline_rotation |
Represents a trajectory for and end effector uses the method effector_spline to create a spline trajectory. Additionally, handles the rotation of the effector as follows: does not rotate during the take off and landing phase, then uses a SLERP algorithm to interpolate the rotation in the quaternion space. More... | |
Typedefs | |
typedef double | Numeric |
typedef double | Time |
typedef Eigen::Matrix< Numeric, 3, 1 > | Point |
typedef std::vector< Point, Eigen::aligned_allocator< Point > > | T_Point |
typedef std::pair< double, Point > | Waypoint |
typedef std::vector< Waypoint > | T_Waypoint |
typedef spline_deriv_constraint< Time, Numeric, 3, true, Point, T_Point > | spline_deriv_constraint_t |
typedef spline_deriv_constraint_t::spline_constraints | spline_constraints_t |
typedef spline_deriv_constraint_t::exact_cubic_t | exact_cubic_t |
typedef spline_deriv_constraint_t::t_spline_t | t_spline_t |
typedef spline_deriv_constraint_t::spline_t | spline_t |
typedef Eigen::Matrix< Numeric, 4, 1 > | quat_t |
typedef Eigen::Ref< quat_t > | quat_ref_t |
typedef const Eigen::Ref< const quat_t > | quat_ref_const_t |
typedef Eigen::Matrix< Numeric, 7, 1 > | config_t |
typedef curve_abc< Time, Numeric, 4, false, quat_t > | curve_abc_quat_t |
typedef std::pair< Numeric, quat_t > | waypoint_quat_t |
typedef std::vector< waypoint_quat_t > | t_waypoint_quat_t |
typedef Eigen::Matrix< Numeric, 1, 1 > | point_one_dim_t |
typedef spline_deriv_constraint< Numeric, Numeric, 1, false, point_one_dim_t > | spline_deriv_constraint_one_dim |
typedef std::pair< Numeric, point_one_dim_t > | waypoint_one_dim_t |
typedef std::vector< waypoint_one_dim_t > | t_waypoint_one_dim_t |
typedef exact_cubic< Time, Numeric, 4, false, quat_t, std::vector< quat_t, Eigen::aligned_allocator< quat_t > >, rotation_spline > | exact_cubic_quat_t |
Functions | |
Waypoint | compute_offset (const Waypoint &source, const Point &normal, const Numeric offset, const Time time_offset) |
spline_t | make_end_spline (const Point &normal, const Point &from, const Numeric offset, const Time init_time, const Time time_offset) |
spline_constraints_t | compute_required_offset_velocity_acceleration (const spline_t &end_spline, const Time time_offset) |
template<typename In > | |
exact_cubic_t * | effector_spline (In wayPointsBegin, In wayPointsEnd, const Point &lift_normal=Eigen::Vector3d::UnitZ(), const Point &land_normal=Eigen::Vector3d::UnitZ(), const Numeric lift_offset=0.02, const Numeric land_offset=0.02, const Time lift_offset_duration=0.02, const Time land_offset_duration=0.02) |
Helper method to create a spline typically used to guide the 3d trajectory of a robot end effector. Given a set of waypoints, and the normal vector of the start and ending positions, automatically create the spline such that: More... | |
typedef Eigen::Matrix<Numeric, 7, 1> spline::helpers::config_t |
typedef curve_abc<Time, Numeric, 4, false, quat_t> spline::helpers::curve_abc_quat_t |
typedef exact_cubic<Time, Numeric, 4, false, quat_t, std::vector<quat_t, Eigen::aligned_allocator<quat_t> >, rotation_spline> spline::helpers::exact_cubic_quat_t |
typedef spline_deriv_constraint_t::exact_cubic_t spline::helpers::exact_cubic_t |
typedef double spline::helpers::Numeric |
typedef Eigen::Matrix<Numeric, 3, 1> spline::helpers::Point |
typedef Eigen::Matrix<Numeric, 1, 1> spline::helpers::point_one_dim_t |
typedef const Eigen::Ref<const quat_t> spline::helpers::quat_ref_const_t |
typedef Eigen::Ref<quat_t> spline::helpers::quat_ref_t |
typedef Eigen::Matrix<Numeric, 4, 1> spline::helpers::quat_t |
typedef spline_deriv_constraint_t::spline_constraints spline::helpers::spline_constraints_t |
typedef spline_deriv_constraint<Numeric, Numeric, 1, false, point_one_dim_t> spline::helpers::spline_deriv_constraint_one_dim |
typedef spline_deriv_constraint<Time, Numeric, 3, true, Point, T_Point> spline::helpers::spline_deriv_constraint_t |
typedef spline_deriv_constraint_t::spline_t spline::helpers::spline_t |
typedef std::vector<Point, Eigen::aligned_allocator<Point> > spline::helpers::T_Point |
typedef spline_deriv_constraint_t::t_spline_t spline::helpers::t_spline_t |
typedef std::vector<Waypoint> spline::helpers::T_Waypoint |
typedef std::vector<waypoint_one_dim_t> spline::helpers::t_waypoint_one_dim_t |
typedef std::vector<waypoint_quat_t> spline::helpers::t_waypoint_quat_t |
typedef double spline::helpers::Time |
typedef std::pair<double, Point> spline::helpers::Waypoint |
typedef std::pair<Numeric, point_one_dim_t> spline::helpers::waypoint_one_dim_t |
typedef std::pair<Numeric, quat_t> spline::helpers::waypoint_quat_t |
Waypoint spline::helpers::compute_offset | ( | const Waypoint & | source, |
const Point & | normal, | ||
const Numeric | offset, | ||
const Time | time_offset | ||
) |
spline_constraints_t spline::helpers::compute_required_offset_velocity_acceleration | ( | const spline_t & | end_spline, |
const Time | time_offset | ||
) |
exact_cubic_t* spline::helpers::effector_spline | ( | In | wayPointsBegin, |
In | wayPointsEnd, | ||
const Point & | lift_normal = Eigen::Vector3d::UnitZ() , |
||
const Point & | land_normal = Eigen::Vector3d::UnitZ() , |
||
const Numeric | lift_offset = 0.02 , |
||
const Numeric | land_offset = 0.02 , |
||
const Time | lift_offset_duration = 0.02 , |
||
const Time | land_offset_duration = 0.02 |
||
) |
Helper method to create a spline typically used to guide the 3d trajectory of a robot end effector. Given a set of waypoints, and the normal vector of the start and ending positions, automatically create the spline such that:
wayPointsBegin | : an iterator pointing to the first element of a waypoint container |
wayPointsEnd | : an iterator pointing to the end of a waypoint container |
lift_normal | : normal to be followed by end effector at take-off |
land_normal | : normal to be followed by end effector at landing |
lift_offset | : length of the straight line along normal at take-off |
land_offset | : length of the straight line along normal at landing |
lift_offset_duration | : time travelled along straight line at take-off |
land_offset_duration | : time travelled along straight line at landing |