Gazebo Gazebo

API Reference

6.16.0
ApplyLinkWrench Class Reference

Exposes transport topics and SDF params for applying forces and torques to links in simulation. It should be attached to a world. More...

#include <ApplyLinkWrench.hh>

Public Member Functions

 ApplyLinkWrench ()
 Constructor. More...
 
 ~ApplyLinkWrench () override=default
 Destructor. More...
 
void Configure (const Entity &_entity, const std::shared_ptr< const sdf::Element > &_sdf, EntityComponentManager &_ecm, EventManager &_eventMgr) override
 Configure the system. More...
 
void PreUpdate (const UpdateInfo &_info, EntityComponentManager &_ecm) override
 
- Public Member Functions inherited from System
 System ()=default
 Constructor. More...
 
virtual ~System ()=default
 Destructor. More...
 

Detailed Description

Exposes transport topics and SDF params for applying forces and torques to links in simulation. It should be attached to a world.

The target link is defined in each message. If a link entity is provided, that will receive a wrench. If a model is provided, its canonical link will receive it. No other entity types are supported.

Topics

  • /world/<world_name>/wrench
    • Message type: msgs::EntityWrench
    • Effect: Applies the given wrench during a single time step.
  • /world/<world_name>/wrench/persistent
    • Message type: msgs::EntityWrench
    • Effect: Keeps applying the given wrench every time step. Persistent wrenches can be applied to entities that aren't in simulation yet, and will start taking effect once they do.
  • /world/<world_name>/wrench/clear
    • Message type: msgs::Entity
    • Effect: Clears any persistent wrenches that are being applied to the given entity.

System Parameters

Persistent wrenches can be defined from SDF, for example:

<persistent>
<entity_name>box</entity_name>
<entity_type>model</entity_type>
<force>-10 0 0</force>
<torque>0 0 0.1</torque>
</persistent>

Constructor & Destructor Documentation

◆ ApplyLinkWrench()

Constructor.

◆ ~ApplyLinkWrench()

~ApplyLinkWrench ( )
overridedefault

Destructor.

Member Function Documentation

◆ Configure()

void Configure ( const Entity _entity,
const std::shared_ptr< const sdf::Element > &  _sdf,
EntityComponentManager _ecm,
EventManager _eventMgr 
)
overridevirtual

Configure the system.

Parameters
[in]_entityThe entity this plugin is attached to.
[in]_sdfThe SDF Element associated with this system plugin.
[in]_ecmThe EntityComponentManager of the given simulation instance.
[in]_eventMgrThe EventManager of the given simulation instance.

Implements ISystemConfigure.

◆ PreUpdate()

void PreUpdate ( const UpdateInfo _info,
EntityComponentManager _ecm 
)
overridevirtual

Implements ISystemPreUpdate.


The documentation for this class was generated from the following file: