Go to the documentation of this file.
36 #include <ArmarXCore/interface/serialization/Eigen.h>
41 #include <RobotAPI/interface/units/GraspCandidateProviderInterface.h>
89 const Eigen::VectorXf& handJointsTarget,
96 const Eigen::VectorXf& handJointsTarget,
103 const Eigen::VectorXf& handJointsTarget,
112 void getIndex(
float t,
int& i1,
int& i2,
float& f);
148 const Eigen::Vector3f& handForward = Eigen::Vector3f::UnitZ());
152 VirtualRobot::RobotNodePtr tcp = VirtualRobot::RobotNodePtr(),
164 void updateKeypointMap();
167 std::vector<KeypointPtr> keypoints;
168 std::map<float, size_t> keypointMap;
std::shared_ptr< RapidXmlReader > RapidXmlReaderPtr
Eigen::Vector3f GetPosition(float t)
std::vector< Eigen::Vector3f > getAllKeypointPositions()
Eigen::Matrix4f tcpTarget
std::vector< Eigen::Matrix3f > getAllKeypointOrientations()
SimpleDiffIK::Reachability calculateReachability(VirtualRobot::RobotNodeSetPtr rns, VirtualRobot::RobotNodePtr tcp=VirtualRobot::RobotNodePtr(), SimpleDiffIK::Parameters params=SimpleDiffIK::Parameters())
static GraspTrajectoryPtr ReadFromFile(const grasping::GraspCandidatePtr &cnd)
void insertKeypoint(size_t index, const Eigen::Matrix4f &tcpTarget, const Eigen::VectorXf &handJointsTarget, float dt)
GraspTrajectoryPtr getTranslatedAndRotated(const Eigen::Vector3f &translation, const Eigen::Matrix3f &rotation)
MatrixXX< 4, 4, float > Matrix4f
Eigen::Matrix4f getStartPose()
std::shared_ptr< Keypoint > KeypointPtr
Vertex target(const detail::edge_base< Directed, Vertex > &e, const PCG &)
Eigen::VectorXf handJointsTarget
Eigen::Vector6f GetTcpDerivative(float t)
Eigen::Matrix3f getTargetOrientation() const
static GraspTrajectoryPtr ReadFromReader(const RapidXmlReaderPtr &reader)
std::vector< Eigen::Matrix4f > getAllKeypointPoses()
std::shared_ptr< class GraspTrajectory > GraspTrajectoryPtr
GraspTrajectory()=default
Eigen::Vector3f GetPositionDerivative(float t)
void removeKeypoint(size_t index)
Eigen::VectorXf GetHandValues(float t)
Length calculateLength() const
void setKeypointDt(size_t index, float dt)
Eigen::Vector3f getTargetPosition() const
GraspTrajectoryPtr getTransformed(const Eigen::Matrix4f &transform)
void getIndex(float t, int &i1, int &i2, float &f)
Eigen::VectorXf GetHandJointsDerivative(float t)
Eigen::Vector3f GetOrientationDerivative(float t)
static GraspTrajectoryPtr ReadFromString(const std::string &xml)
auto transform(const Container< InputT, Alloc > &in, OutputT(*func)(InputT const &)) -> Container< OutputT, typename std::allocator_traits< Alloc >::template rebind_alloc< OutputT >>
Convenience function (with less typing) to transform a container of type InputT into the same contain...
GraspTrajectoryPtr getTransformedToGraspPose(const Eigen::Matrix4f &target, const Eigen::Vector3f &handForward=Eigen::Vector3f::UnitZ())
int GetHandJointCount() const
KeypointPtr & lastKeypoint()
KeypointPtr & getKeypoint(int i)
Keypoint(const Eigen::Matrix4f &tcpTarget, const Eigen::VectorXf &handJointsTarget)
Eigen::Matrix3f GetOrientation(float t)
Eigen::VectorXf feedForwardHandJointsVelocity
Eigen::Vector3f feedForwardOriVelocity
void replaceKeypoint(size_t index, const Eigen::Matrix4f &tcpTarget, const Eigen::VectorXf &handJointsTarget, float dt)
void writeToFile(const std::string &filename)
Eigen::Matrix4f getTargetPose() const
MatrixXX< 3, 3, float > Matrix3f
Eigen::Matrix4f GetPose(float t)
GraspTrajectoryPtr getClone()
Eigen::Vector3f feedForwardPosVelocity
float getDuration() const
void updateVelocities(const KeypointPtr &prev, float dt)
This file offers overloads of toIce() and fromIce() functions for STL container types.
size_t getKeypointCount() const
void addKeypoint(const Eigen::Matrix4f &tcpTarget, const Eigen::VectorXf &handJointsTarget, float dt)