17 #ifndef GAZEBO_PHYSICS_COLLISION_HH_ 18 #define GAZEBO_PHYSICS_COLLISION_HH_ 48 public:
virtual void Fini();
52 public:
virtual void Load(sdf::ElementPtr _sdf);
55 public:
virtual void Init();
59 public:
virtual void UpdateParameters(sdf::ElementPtr _sdf);
63 public:
void SetCollision(
bool _placeable);
68 public:
bool IsPlaceable()
const;
72 public:
virtual void SetCategoryBits(
unsigned int _bits) = 0;
76 public:
virtual void SetCollideBits(
unsigned int _bits) = 0;
80 public:
void SetLaserRetro(
float _retro);
84 public:
float GetLaserRetro()
const;
88 public:
LinkPtr GetLink()
const;
96 public:
virtual ignition::math::Box BoundingBox()
const = 0;
101 public:
unsigned int GetShapeType()
const;
105 public:
void SetShape(
ShapePtr _shape);
118 public:
void SetScale(
const ignition::math::Vector3d &_scale);
128 public:
virtual ignition::math::Vector3d RelativeLinearVel()
const;
140 public:
virtual ignition::math::Vector3d WorldLinearVel()
const;
150 public:
virtual ignition::math::Vector3d RelativeAngularVel()
const;
160 public:
virtual ignition::math::Vector3d WorldAngularVel()
const;
170 public:
virtual ignition::math::Vector3d RelativeLinearAccel()
const;
182 public:
virtual ignition::math::Vector3d WorldLinearAccel()
const;
187 public:
virtual math::Vector3 GetRelativeAngularAccel()
const 192 public:
virtual ignition::math::Vector3d RelativeAngularAccel()
const;
204 public:
virtual ignition::math::Vector3d WorldAngularAccel()
const;
216 public:
void FillMsg(msgs::Collision &_msg);
220 public:
void ProcessMsg(
const msgs::Collision &_msg);
225 {
return this->surface;}
230 public:
virtual void SetMaxContacts(
unsigned int _maxContacts);
235 public:
virtual unsigned int GetMaxContacts();
240 public:
void SetWorldPoseDirty();
244 public:
virtual const math::Pose GetWorldPose()
const 248 public:
virtual const ignition::math::Pose3d &WorldPose()
const;
252 private: msgs::Visual CreateCollisionVisual();
267 private:
float laserRetro;
273 private:
unsigned int maxContacts;
276 private: uint32_t collisionVisualId;
279 private:
mutable bool worldPoseDirty;
boost::shared_ptr< Link > LinkPtr
Definition: PhysicsTypes.hh:109
Forward declarations for the common classes.
Definition: Animation.hh:33
Encapsulates a position and rotation in three space.
Definition: Pose.hh:42
Base class for all collision entities.
Definition: Collision.hh:38
The Vector3 class represents the generic vector containing 3 elements.
Definition: Vector3.hh:44
ShapePtr shape
Pointer to physics::Shape.
Definition: Collision.hh:261
SurfaceParamsPtr surface
The surface parameters.
Definition: Collision.hh:264
LinkPtr link
The link this collision belongs to.
Definition: Collision.hh:255
bool placeable
Flag for placeable.
Definition: Collision.hh:258
default namespace for gazebo
boost::shared_ptr< SurfaceParams > SurfaceParamsPtr
Definition: PhysicsTypes.hh:169
Base class for all physics objects in Gazebo.
Definition: Entity.hh:56
#define GAZEBO_DEPRECATED(version)
Definition: system.hh:302
boost::shared_ptr< Shape > ShapePtr
Definition: PhysicsTypes.hh:141
boost::shared_ptr< Model > ModelPtr
Definition: PhysicsTypes.hh:93
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:44
SurfaceParamsPtr GetSurface() const
Get the surface parameters.
Definition: Collision.hh:224