| 
|   | JointController (ModelPtr _model) | 
|   | Constructor.  More...
  | 
|   | 
| virtual  | ~JointController () | 
|   | Destructor.  More...
  | 
|   | 
| void  | AddJoint (JointPtr _joint) | 
|   | Add a joint to control.  More...
  | 
|   | 
| std::map< std::string, double >  | GetForces () const | 
|   | Get all the applied forces.  More...
  | 
|   | 
| std::map< std::string, JointPtr >  | GetJoints () const | 
|   | Get all the joints.  More...
  | 
|   | 
| common::Time  | GetLastUpdateTime () const | 
|   | Get the last time the controller was updated.  More...
  | 
|   | 
| std::map< std::string, common::PID >  | GetPositionPIDs () const | 
|   | Get all the position PID controllers.  More...
  | 
|   | 
| std::map< std::string, double >  | GetPositions () const | 
|   | Get all the position PID set points.  More...
  | 
|   | 
| std::map< std::string, double >  | GetVelocities () const | 
|   | Get all the velocity PID set points.  More...
  | 
|   | 
| std::map< std::string, common::PID >  | GetVelocityPIDs () const | 
|   | Get all the velocity PID controllers.  More...
  | 
|   | 
| void  | Reset () | 
|   | Reset all commands.  More...
  | 
|   | 
| void  | SetJointPosition (const std::string &_name, double _position, int _index=0) | 
|   | Set the positions of a Joint by name.  More...
  | 
|   | 
| void  | SetJointPosition (JointPtr _joint, double _position, int _index=0) | 
|   | Set the positions of a Joint by name The position is specified in native units, which means, if you are using metric system, it's meters for SliderJoint and radians for HingeJoint, etc.  More...
  | 
|   | 
| void  | SetJointPositions (const std::map< std::string, double > &_jointPositions) | 
|   | Set the positions of a set of Joint's.  More...
  | 
|   | 
| void  | SetPositionPID (const std::string &_jointName, const common::PID &_pid) | 
|   | Set the position PID values for a joint.  More...
  | 
|   | 
| bool  | SetPositionTarget (const std::string &_jointName, double _target) | 
|   | Set the target position for the position PID controller.  More...
  | 
|   | 
| void  | SetVelocityPID (const std::string &_jointName, const common::PID &_pid) | 
|   | Set the velocity PID values for a joint.  More...
  | 
|   | 
| bool  | SetVelocityTarget (const std::string &_jointName, double _target) | 
|   | Set the target velocity for the velocity PID controller.  More...
  | 
|   | 
| void  | Update () | 
|   | Update the joint control.  More...
  | 
|   | 
A class for manipulating physics::Joint. 
 
      
        
          | void SetJointPosition  | 
          ( | 
          JointPtr  | 
          _joint,  | 
        
        
           | 
           | 
          double  | 
          _position,  | 
        
        
           | 
           | 
          int  | 
          _index = 0  | 
        
        
           | 
          ) | 
           |  | 
        
      
 
Set the positions of a Joint by name The position is specified in native units, which means, if you are using metric system, it's meters for SliderJoint and radians for HingeJoint, etc. 
Implementation: In order to change the position of a Joint inside a Model, this call must recursively crawl through all the connected children Link's in this Model, and update each Link Pose affected by this Joint angle update. Warning: There is no constraint satisfaction being done here, traversal through the kinematic graph has unexpected behavior if you try to set the joint position of a link inside a loop structure. Warning: 
- Parameters
 - 
  
    | [in] | _joint | Joint to set.  | 
    | [in] | _position | Position of the joint.  |