goal_mid_joint.h
Go to the documentation of this file.
00001 
00026 #ifndef GOAL_MID_JOINT_H
00027 #define GOAL_MID_JOINT_H
00028 
00029 #include "constrained_ik/constraint.h"
00030 
00031 namespace constrained_ik
00032 {
00033 namespace constraints
00034 {
00042 class GoalMidJoint : public Constraint
00043 {
00044 public:
00045   EIGEN_MAKE_ALIGNED_OPERATOR_NEW
00046   GoalMidJoint();
00047 
00054   void init(const Constrained_IK *ik) override;
00055 
00057   constrained_ik::ConstraintResults evalConstraint(const SolverState &state) const override;
00058 
00060   void loadParameters(const XmlRpc::XmlRpcValue &constraint_xml) override;
00061 
00067   virtual Eigen::MatrixXd calcJacobian(const ConstraintData &cdata) const;
00068 
00074   virtual Eigen::VectorXd calcError(const ConstraintData &cdata) const;
00075 
00081   virtual bool checkStatus(const ConstraintData &cdata) const { return true;} //always return true
00082 
00087   virtual double getWeight() const {return weight_;}
00088 
00092   virtual void setWeight(double weight) {weight_ = weight;}
00093 
00094 protected:
00095   double weight_; 
00096   Eigen::VectorXd mid_range_;   
00098 }; // class GoalMidJoint
00099 
00100 } // namespace constraints
00101 } // namespace constrained_ik
00102 
00103 
00104 #endif // GOAL_MID_JOINT_H
00105 


constrained_ik
Author(s): Chris Lewis , Jeremy Zoss , Dan Solomon
autogenerated on Sat Jun 8 2019 19:23:45