22 #ifndef _BULLETSCREWJOINT_HH_
23 #define _BULLETSCREWJOINT_HH_
35 class btScrewConstraint;
54 public:
virtual void Load(sdf::ElementPtr _sdf);
57 public:
virtual math::Vector3 GetAnchor(
unsigned int _index)
const;
60 public:
virtual void SetAnchor(
unsigned int _index,
64 public:
virtual void Init();
69 public:
void SetAxis(
unsigned int _index,
const math::Vector3 &_axis);
72 public:
virtual void SetThreadPitch(
unsigned int _index,
76 public:
virtual void SetThreadPitch(
double _threadPitch);
79 public:
virtual double GetThreadPitch(
unsigned int _index);
82 public:
virtual double GetThreadPitch();
85 public:
virtual bool SetHighStop(
unsigned int _index,
89 public:
virtual bool SetLowStop(
unsigned int _index,
94 public:
virtual double GetVelocity(
unsigned int _index)
const;
99 public:
virtual void SetVelocity(
unsigned int _index,
double _vel);
104 public:
virtual void SetMaxForce(
unsigned int _index,
double _force);
109 public:
virtual double GetMaxForce(
unsigned int _index);
114 public:
virtual math::Vector3 GetGlobalAxis(
unsigned int _index)
const;
117 public:
virtual double GetParam(
const std::string &_key,
118 unsigned int _index);
121 protected:
virtual math::Angle GetAngleImpl(
unsigned int _index)
const;
124 protected:
virtual void SetForceImpl(
unsigned int _index,
double _force);
127 private: btScrewConstraint *bulletScrew;
boost::shared_ptr< Base > BasePtr
Definition: PhysicsTypes.hh:66
The Vector3 class represents the generic vector containing 3 elements.
Definition: Vector3.hh:43
A screw joint, which has both prismatic and rotational DOFs.
Definition: ScrewJoint.hh:34
GAZEBO_VISIBLE void Init(google::protobuf::Message &_message, const std::string &_id="")
Initialize a message.
A screw joint.
Definition: BulletScrewJoint.hh:42
An angle and related functions.
Definition: Angle.hh:52
#define GAZEBO_VISIBLE
Use to represent "symbol visible" if supported.
Definition: system.hh:48