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);
64 public:
void SetCollision(
bool _placeable);
68 public:
void SetPlaceable(
const bool _placeable);
73 public:
bool IsPlaceable()
const;
77 public:
virtual void SetCategoryBits(
unsigned int _bits) = 0;
81 public:
virtual void SetCollideBits(
unsigned int _bits) = 0;
85 public:
void SetLaserRetro(
float _retro);
89 public:
float GetLaserRetro()
const;
93 public:
LinkPtr GetLink()
const;
101 public:
virtual ignition::math::Box BoundingBox()
const = 0;
106 public:
unsigned int GetShapeType()
const;
110 public:
void SetShape(
ShapePtr _shape);
123 public:
void SetScale(
const ignition::math::Vector3d &_scale);
133 public:
virtual ignition::math::Vector3d RelativeLinearVel()
const;
145 public:
virtual ignition::math::Vector3d WorldLinearVel()
const;
155 public:
virtual ignition::math::Vector3d RelativeAngularVel()
const;
165 public:
virtual ignition::math::Vector3d WorldAngularVel()
const;
175 public:
virtual ignition::math::Vector3d RelativeLinearAccel()
const;
187 public:
virtual ignition::math::Vector3d WorldLinearAccel()
const;
192 public:
virtual math::Vector3 GetRelativeAngularAccel()
const
197 public:
virtual ignition::math::Vector3d RelativeAngularAccel()
const;
209 public:
virtual ignition::math::Vector3d WorldAngularAccel()
const;
221 public:
void FillMsg(msgs::Collision &_msg);
225 public:
void ProcessMsg(
const msgs::Collision &_msg);
230 {
return this->surface;}
235 public:
virtual void SetMaxContacts(
unsigned int _maxContacts);
240 public:
virtual unsigned int GetMaxContacts();
245 public:
void SetWorldPoseDirty();
249 public:
virtual const math::Pose GetWorldPose() const
250 GAZEBO_DEPRECATED(8.0);
253 public: virtual const ignition::math::Pose3d &WorldPose() const;
257 private: msgs::Visual CreateCollisionVisual();
263 protected:
bool placeable;
272 private:
float laserRetro;
278 private:
unsigned int maxContacts;
281 private: uint32_t collisionVisualId;
284 private: mutable
bool worldPoseDirty;
boost::shared_ptr< Link > LinkPtr
Definition: PhysicsTypes.hh:109
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
default namespace for gazebo
boost::shared_ptr< SurfaceParams > SurfaceParamsPtr
Definition: PhysicsTypes.hh:169
SurfaceParamsPtr GetSurface() const
Get the surface parameters.
Definition: Collision.hh:229
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