goal_mid_joint.h
Go to the documentation of this file.
00001 /*
00002  * Software License Agreement (Apache License)
00003  *
00004  * Copyright (c) 2013, Southwest Research Institute
00005  *
00006  * Licensed under the Apache License, Version 2.0 (the "License");
00007  * you may not use this file except in compliance with the License.
00008  * You may obtain a copy of the License at
00009  *
00010  *   http://www.apache.org/licenses/LICENSE-2.0
00011  *
00012  * Unless required by applicable law or agreed to in writing, software
00013  * distributed under the License is distributed on an "AS IS" BASIS,
00014  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
00015  * See the License for the specific language governing permissions and
00016  * limitations under the License.
00017  */
00018 
00019 
00020 #ifndef GOAL_MID_JOINT_H
00021 #define GOAL_MID_JOINT_H
00022 
00023 #include "constrained_ik/constraint.h"
00024 
00025 namespace constrained_ik
00026 {
00027 namespace constraints
00028 {
00029 
00032 class GoalMidJoint : public Constraint
00033 {
00034 public:
00035   GoalMidJoint();
00036   virtual ~GoalMidJoint() {};
00037 
00041   virtual Eigen::MatrixXd calcJacobian();
00042 
00046   virtual Eigen::VectorXd calcError();
00047 
00051   virtual bool checkStatus() const { return true;}; //always return true
00052 
00056   double getWeight() {return weight_;}
00057 
00063   void init(const Constrained_IK *ik);
00064 
00068   void setWeight(double weight) {weight_ = weight;};
00069 
00070 protected:
00071   double weight_;
00072   Eigen::VectorXd mid_range_;   // mid-range of each joint
00073 
00074 }; // class GoalMidJoint
00075 
00076 } // namespace constraints
00077 } // namespace constrained_ik
00078 
00079 
00080 #endif // GOAL_MID_JOINT_H
00081 


constrained_ik
Author(s): Chris Lewis , Jeremy Zoss , Dan Solomon
autogenerated on Mon Oct 6 2014 00:52:26