22 #ifndef _BULLETHINGE2JOINT_HH_
23 #define _BULLETHINGE2JOINT_HH_
30 class btHinge2Constraint;
50 protected:
virtual void Load(sdf::ElementPtr _sdf);
53 public:
virtual void Init();
56 public:
virtual ignition::math::Vector3d Anchor(
57 const unsigned int _index)
const;
60 public:
virtual void SetAxis(
const unsigned int _index,
61 const ignition::math::Vector3d &_axis);
64 public:
double GetVelocity(
unsigned int _index)
const;
67 public:
virtual void SetVelocity(
unsigned int _index,
double _angle);
70 public:
virtual void SetUpperLimit(
const unsigned int _index,
74 public:
virtual void SetLowerLimit(
const unsigned int _index,
78 public:
virtual double UpperLimit(
const unsigned int _index)
const;
81 public:
virtual double LowerLimit(
const unsigned int _index)
const;
84 public:
virtual ignition::math::Vector3d GlobalAxis(
85 const unsigned int _index)
const;
88 public:
virtual double PositionImpl(
const unsigned int _index)
const;
91 protected:
virtual void SetForceImpl(
unsigned int _index,
double _torque);
94 private: btHinge2Constraint *bulletHinge2;
98 private:
double angleOffset[2];
102 private: ignition::math::Vector3d initialWorldAxis[2];
A two axis hinge joint.
Definition: Hinge2Joint.hh:41
A two axis hinge joint.
Definition: BulletHinge2Joint.hh:41
GAZEBO_VISIBLE void Init(google::protobuf::Message &_message, const std::string &_id="")
Initialize a message.
boost::shared_ptr< Base > BasePtr
Definition: PhysicsTypes.hh:77