Go to the documentation of this file.
12 #include <tvm/function/abstract/Function.h>
14 #include <RBDyn/Jacobian.h>
32 EIGEN_MAKE_ALIGNED_OPERATOR_NEW
34 SET_UPDATES(
GazeFunction, Value, Velocity, Jacobian, NormalAcceleration)
43 inline void reset() { pointRef_ = point_; }
49 void estimate(
const Eigen::Vector2d & point, std::optional<double> depth = std::nullopt);
55 void estimate(
const Eigen::Vector3d & point);
58 inline void target(
const Eigen::Vector2d & ref) noexcept { pointRef_ = ref; }
61 inline const Eigen::Vector2d &
target() const noexcept {
return pointRef_; }
72 Eigen::Vector2d point_ = Eigen::Vector2d::Zero();
73 Eigen::Vector2d pointRef_ = Eigen::Vector2d::Zero();
74 double depthEstimate_ = 1.0;
84 void updateVelocity();
85 void updateJacobian();
88 void updateNormalAcceleration();
90 void setDepthEstimate(
double depth);
mc_rbdyn::ConstRobotFramePtr frame_
Definition: GazeFunction.h:67
Definition: GazeFunction.h:30
Eigen::MatrixXd shortJacMat_
Definition: GazeFunction.h:86
Eigen::MatrixXd jacMat_
Definition: GazeFunction.h:87
#define MC_TVM_DLLAPI
Definition: api.h:47
Definition: CollisionFunction.h:15
mc_tvm::RobotFrame & tvm_frame_
Definition: GazeFunction.h:68
void reset()
Definition: GazeFunction.h:43
void target(const Eigen::Vector2d &ref) noexcept
Definition: GazeFunction.h:58
Definition: RobotFrame.h:21
Eigen::Matrix< double, 2, 6 > L_img_
Definition: GazeFunction.h:77
rbd::Jacobian frameJac_
Definition: GazeFunction.h:69
const Eigen::Vector2d & target() const noexcept
Definition: GazeFunction.h:61
Eigen::Matrix< double, 1, 6 > L_Z_dot_
Definition: GazeFunction.h:79
std::shared_ptr< const RobotFrame > ConstRobotFramePtr
Definition: fwd.h:25
Definition: RobotFrame.h:27
const mc_rbdyn::RobotFrame & frame() const noexcept
Definition: GazeFunction.h:64
Eigen::Matrix< double, 6, 1 > surfaceVelocity_
Definition: GazeFunction.h:78
Eigen::Matrix< double, 2, 6 > L_img_dot_
Definition: GazeFunction.h:80