22 #ifndef _BULLETSCREWJOINT_HH_
23 #define _BULLETSCREWJOINT_HH_
35 class btScrewConstraint;
54 public:
virtual void Load(sdf::ElementPtr _sdf);
57 public:
virtual ignition::math::Vector3d Anchor(
58 const unsigned int _index)
const;
61 public:
virtual void SetAnchor(
const unsigned int _index,
62 const ignition::math::Vector3d &_anchor);
65 public:
virtual void Init();
70 public:
void SetAxis(
const unsigned int _index,
71 const ignition::math::Vector3d &_axis);
74 public:
virtual void SetThreadPitch(
unsigned int _index,
78 public:
virtual void SetThreadPitch(
double _threadPitch);
81 public:
virtual double GetThreadPitch(
unsigned int _index);
84 public:
virtual double GetThreadPitch();
87 public:
virtual void SetUpperLimit(
const unsigned int _index,
91 public:
virtual void SetLowerLimit(
const unsigned int _index,
96 public:
virtual double GetVelocity(
unsigned int _index)
const;
101 public:
virtual void SetVelocity(
unsigned int _index,
double _vel);
106 public:
virtual ignition::math::Vector3d GlobalAxis(
107 const unsigned int _index)
const;
110 public:
virtual double GetParam(
const std::string &_key,
111 unsigned int _index);
114 protected:
virtual double PositionImpl(
const unsigned int _index)
const;
117 protected:
virtual void SetForceImpl(
unsigned int _index,
double _force);
120 private: btScrewConstraint *bulletScrew;
124 private: ignition::math::Vector3d initialWorldAxis;
A screw joint, which has both prismatic and rotational DOFs.
Definition: ScrewJoint.hh:35
GAZEBO_VISIBLE void Init(google::protobuf::Message &_message, const std::string &_id="")
Initialize a message.
A screw joint.
Definition: BulletScrewJoint.hh:42
boost::shared_ptr< Base > BasePtr
Definition: PhysicsTypes.hh:77