Go to the documentation of this file. 1 #ifndef AIKIDO_PLANNER_VECTORFIELD_BODYNODEPOSEVECTORFIELD_HPP_
2 #define AIKIDO_PLANNER_VECTORFIELD_BODYNODEPOSEVECTORFIELD_HPP_
4 #include <dart/dynamics/BodyNode.hpp>
11 namespace vectorfield {
40 metaSkeletonStateSpace,
41 ::dart::dynamics::MetaSkeletonPtr metaSkeleton,
42 ::dart::dynamics::ConstBodyNodePtr bodyNode,
44 double jointLimitPadding,
45 bool enforceJointVelocityLimits =
false);
50 Eigen::VectorXd& qd)
const override;
61 const Eigen::Isometry3d& pose,
62 Eigen::Vector6d& cartesianVelocity)
const = 0;
69 const Eigen::Isometry3d& pose)
const = 0;
76 double& evalTimePivot,
77 bool includeEndTime)
const override;
90 ::dart::dynamics::ConstBodyNodePtr
getBodyNode()
const;
123 #endif // AIKIDO_PLANNER_VECTORFIELD_BODYNODEPOSEVECTORFIELD_HPP_
std::shared_ptr< const MetaSkeletonStateSpace > ConstMetaSkeletonStateSpacePtr
Definition: MetaSkeletonStateSpace.hpp:17
This class is a vector field over a MetaSkeletonStateSpace that is defined in terms of a Cartesian ve...
Definition: BodyNodePoseVectorField.hpp:24
::dart::dynamics::MetaSkeletonPtr getMetaSkeleton()
Returns meta skeleton.
Format of serialized trajectory in YAML.
Definition: algorithm.hpp:4
Constraint which can be tested.
Definition: Testable.hpp:17
BodyNodePoseVectorField(aikido::statespace::dart::ConstMetaSkeletonStateSpacePtr metaSkeletonStateSpace, ::dart::dynamics::MetaSkeletonPtr metaSkeleton, ::dart::dynamics::ConstBodyNodePtr bodyNode, double maxStepSize, double jointLimitPadding, bool enforceJointVelocityLimits=false)
Constructor.
bool evaluateTrajectory(const aikido::trajectory::Trajectory &trajectory, const aikido::constraint::Testable *constraint, double evalStepSize, double &evalTimePivot, bool includeEndTime) const override
Evaludate whether a trajectory satisfies a constraint.
double mMaxStepSize
Maximum step size of integrator.
Definition: BodyNodePoseVectorField.hpp:104
::dart::dynamics::MetaSkeletonPtr mMetaSkeleton
Meta Skeleton.
Definition: BodyNodePoseVectorField.hpp:98
aikido::statespace::dart::ConstMetaSkeletonStateSpacePtr mMetaSkeletonStateSpace
Meta skeleton state space.
Definition: BodyNodePoseVectorField.hpp:95
aikido::statespace::dart::ConstMetaSkeletonStateSpacePtr getMetaSkeletonStateSpace() const
Return const meta skeleton state space.
::dart::dynamics::ConstBodyNodePtr getBodyNode() const
Returns const body node of end-effector.
virtual VectorFieldPlannerStatus evaluateCartesianStatus(const Eigen::Isometry3d &pose) const =0
Evaluate current pose to determine the status of planning.
Eigen::VectorXd mVelocityLowerLimits
Joint velocities lower limits.
Definition: BodyNodePoseVectorField.hpp:110
Eigen::VectorXd mVelocityUpperLimits
Joint velocities upper limits.
Definition: BodyNodePoseVectorField.hpp:113
VectorFieldPlannerStatus evaluateStatus(const aikido::statespace::StateSpace::State *state) const override
Vectorfield planning status callback function.
double mJointLimitPadding
Padding of joint limits.
Definition: BodyNodePoseVectorField.hpp:107
bool mEnforceJointVelocityLimits
Enfoce joint velocity limits.
Definition: BodyNodePoseVectorField.hpp:116
This class defines a vector field.
Definition: VectorField.hpp:18
VectorFieldPlannerStatus
Status of planning.
Definition: VectorFieldPlannerStatus.hpp:14
bool evaluateVelocity(const aikido::statespace::StateSpace::State *state, Eigen::VectorXd &qd) const override
Vectorfield callback function.
Definition: StateSpace.hpp:167
virtual bool evaluateCartesianVelocity(const Eigen::Isometry3d &pose, Eigen::Vector6d &cartesianVelocity) const =0
Evaluate Cartesian velocity by current pose of body node.
#define AIKIDO_DECLARE_POINTERS(X)
Definition: pointers.hpp:21
Time-parameterized path in a StateSpace.
Definition: Trajectory.hpp:20
::dart::dynamics::ConstBodyNodePtr mBodyNode
BodyNode.
Definition: BodyNodePoseVectorField.hpp:101