22 #ifndef _COLLISION_HH_ 23 #define _COLLISION_HH_ 54 public:
virtual void Fini();
58 public:
virtual void Load(sdf::ElementPtr _sdf);
61 public:
virtual void Init();
65 public:
virtual void UpdateParameters(sdf::ElementPtr _sdf);
70 public:
void SetCollision(
bool _placeable);
74 public:
void SetPlaceable(
const bool _placeable);
79 public:
bool IsPlaceable()
const;
83 public:
virtual void SetCategoryBits(
unsigned int _bits) = 0;
87 public:
virtual void SetCollideBits(
unsigned int _bits) = 0;
91 public:
void SetLaserRetro(
float _retro);
95 public:
float GetLaserRetro()
const;
99 public:
LinkPtr GetLink()
const;
107 public:
virtual math::Box GetBoundingBox()
const = 0;
112 public:
unsigned int GetShapeType()
const;
116 public:
void SetShape(
ShapePtr _shape);
145 public:
virtual math::Vector3 GetRelativeLinearAccel()
const;
154 public:
virtual math::Vector3 GetRelativeAngularAccel()
const;
171 public:
void FillMsg(msgs::Collision &_msg);
175 public:
void ProcessMsg(
const msgs::Collision &_msg);
180 {
return this->surface;}
185 public:
virtual void SetMaxContacts(
unsigned int _maxContacts);
190 public:
virtual unsigned int GetMaxContacts();
195 public:
void SetWorldPoseDirty();
198 public:
virtual const math::Pose &GetWorldPose()
const;
202 private: msgs::Visual CreateCollisionVisual();
217 private:
float laserRetro;
223 private:
unsigned int maxContacts;
226 private: uint32_t collisionVisualId;
229 private:
mutable bool worldPoseDirty;
boost::shared_ptr< Link > LinkPtr
Definition: PhysicsTypes.hh:100
Forward declarations for the common classes.
Definition: Animation.hh:33
Encapsulates a position and rotation in three space.
Definition: Pose.hh:37
Base class for all collision entities.
Definition: Collision.hh:44
The Vector3 class represents the generic vector containing 3 elements.
Definition: Vector3.hh:39
ShapePtr shape
Pointer to physics::Shape.
Definition: Collision.hh:211
SurfaceParamsPtr surface
The surface parameters.
Definition: Collision.hh:214
Mathematical representation of a box and related functions.
Definition: Box.hh:35
LinkPtr link
The link this collision belongs to.
Definition: Collision.hh:205
bool placeable
Flag for placeable.
Definition: Collision.hh:208
default namespace for gazebo
boost::shared_ptr< SurfaceParams > SurfaceParamsPtr
Definition: PhysicsTypes.hh:160
Base class for all physics objects in Gazebo.
Definition: Entity.hh:58
boost::shared_ptr< Shape > ShapePtr
Definition: PhysicsTypes.hh:132
boost::shared_ptr< Model > ModelPtr
Definition: PhysicsTypes.hh:88
GAZEBO_VISIBLE void Init(google::protobuf::Message &_message, const std::string &_id="")
Initialize a message.
Store state information of a physics::Collision object.
Definition: CollisionState.hh:42
SurfaceParamsPtr GetSurface() const
Get the surface parameters.
Definition: Collision.hh:179