Public Member Functions | List of all members
sdf::v12::World Class Reference

#include <World.hh>

Public Member Functions

 World ()
 Default constructor. More...
 
const ActorActorByIndex (const uint64_t _index) const
 Get an actor based on an index. More...
 
uint64_t ActorCount () const
 Get the number of actors. More...
 
bool ActorNameExists (const std::string &_name) const
 Get whether an actor name exists. More...
 
bool AddActor (const Actor &_actor)
 Add an actor to the world. More...
 
bool AddLight (const Light &_light)
 Add a light to the world. More...
 
bool AddModel (const Model &_model)
 Add a model to the world. More...
 
const sdf::AtmosphereAtmosphere () const
 Get a pointer to the atmosphere model associated with this world. More...
 
std::string AudioDevice () const
 Get the audio device name. More...
 
void ClearActors ()
 Remove all models. More...
 
void ClearLights ()
 Remove all models. More...
 
void ClearModels ()
 Remove all models. More...
 
sdf::ElementPtr Element () const
 Get a pointer to the SDF element that was used during load. More...
 
const FrameFrameByIndex (const uint64_t _index) const
 Get an immediate (not nested) child explicit frame based on an index. More...
 
const FrameFrameByName (const std::string &_name) const
 Get an explicit frame based on a name. More...
 
uint64_t FrameCount () const
 Get the number of explicit frames that are immediate (not nested) children of this World object. More...
 
bool FrameNameExists (const std::string &_name) const
 Get whether an explicit frame name exists. More...
 
ignition::math::Vector3d Gravity () const
 Get the acceleration due to gravity. More...
 
const sdf::GuiGui () const
 Get a pointer to the Gui associated with this world. More...
 
std::shared_ptr< const InterfaceModelInterfaceModelByIndex (const uint64_t _index) const
 Get an immediate (not recursively nested) child interface model based on an index. More...
 
uint64_t InterfaceModelCount () const
 Get the number of nested interface models that are immediate (not recursively nested) children of this World object. More...
 
const NestedIncludeInterfaceModelNestedIncludeByIndex (const uint64_t _index) const
 Get the nested include information of an immediate (not recursively nested) child interface model based on an index. More...
 
const LightLightByIndex (const uint64_t _index) const
 Get a light based on an index. More...
 
uint64_t LightCount () const
 Get the number of lights. More...
 
bool LightNameExists (const std::string &_name) const
 Get whether a light name exists. More...
 
Errors Load (ElementPtr _sdf)
 Load the world based on a element pointer. More...
 
Errors Load (sdf::ElementPtr _sdf, const ParserConfig &_config)
 Load the world based on a element pointer. More...
 
ignition::math::Vector3d MagneticField () const
 Get the magnetic vector in Tesla, expressed in a coordinate frame defined by the SphericalCoordinates property. More...
 
const ModelModelByIndex (const uint64_t _index) const
 Get an immediate (not recursively nested) child model based on an index. More...
 
const ModelModelByName (const std::string &_name) const
 Get a model based on a name. More...
 
uint64_t ModelCount () const
 Get the number of models that are immediate (not nested) children of this World object. More...
 
bool ModelNameExists (const std::string &_name) const
 Get whether a model name exists. More...
 
std::string Name () const
 Get the name of the world. More...
 
const PhysicsPhysicsByIndex (const uint64_t _index) const
 Get a physics profile based on an index. More...
 
uint64_t PhysicsCount () const
 Get the number of physics profiles. More...
 
const PhysicsPhysicsDefault () const
 Get the default physics profile. More...
 
bool PhysicsNameExists (const std::string &_name) const
 Get whether a physics profile name exists. More...
 
const sdf::SceneScene () const
 Get a pointer to the Scene associated with this world. More...
 
void SetAtmosphere (const sdf::Atmosphere &_atmosphere)
 Set the atmosphere model associated with this world. More...
 
void SetAudioDevice (const std::string &_device)
 Set the audio device name. More...
 
void SetGravity (const ignition::math::Vector3d &_gravity)
 Set the acceleration due to gravity. More...
 
void SetGui (const sdf::Gui &_gui)
 Set the Gui parameters associated with this world. More...
 
void SetMagneticField (const ignition::math::Vector3d &_mag)
 Set the magnetic vector in Tesla, expressed in a coordinate frame defined by the SphericalCoordinate. More...
 
void SetName (const std::string &_name)
 Set the name of the world. More...
 
void SetScene (const sdf::Scene &_scene)
 Set the Scene parameters associated with this world. More...
 
void SetSphericalCoordinates (const ignition::math::SphericalCoordinates &_coord)
 Set the spherical coordinates for the world origin. More...
 
void SetWindLinearVelocity (const ignition::math::Vector3d &_wind)
 Set the wind linear velocity in the global/world coordinate frame. More...
 
const ignition::math::SphericalCoordinates * SphericalCoordinates () const
 Get the spherical coordinates for the world origin. More...
 
Errors ValidateGraphs () const
 Check that the FrameAttachedToGraph and PoseRelativeToGraph are valid. More...
 
ignition::math::Vector3d WindLinearVelocity () const
 Get the wind linear velocity in the global/world coordinate frame. More...
 

Constructor & Destructor Documentation

◆ World()

sdf::v12::World::World ( )

Default constructor.

Member Function Documentation

◆ ActorByIndex()

const Actor* sdf::v12::World::ActorByIndex ( const uint64_t  _index) const

Get an actor based on an index.

Parameters
[in]_indexIndex of the actor. The index should be in the range [0..ActorCount()).
Returns
Pointer to the actor. Nullptr if the index does not exist.
See also
uint64_t ActorCount() const

◆ ActorCount()

uint64_t sdf::v12::World::ActorCount ( ) const

Get the number of actors.

Returns
Number of actors contained in this World object.

◆ ActorNameExists()

bool sdf::v12::World::ActorNameExists ( const std::string &  _name) const

Get whether an actor name exists.

Parameters
[in]_nameName of the actor to check.
Returns
True if there exists an actor with the given name.

◆ AddActor()

bool sdf::v12::World::AddActor ( const Actor _actor)

Add an actor to the world.

Parameters
[in]_actorActor to add.
Returns
True if successful, false if an actor with the name already exists.

◆ AddLight()

bool sdf::v12::World::AddLight ( const Light _light)

Add a light to the world.

Parameters
[in]_lightLight to add.
Returns
True if successful, false if a lights with the name already exists.

◆ AddModel()

bool sdf::v12::World::AddModel ( const Model _model)

Add a model to the world.

Parameters
[in]_modelModel to add.
Returns
True if successful, false if a model with the name already exists.

◆ Atmosphere()

const sdf::Atmosphere* sdf::v12::World::Atmosphere ( ) const

Get a pointer to the atmosphere model associated with this world.

A nullptr indicates that an atmosphere model has not been set.

Returns
Pointer to this world's atmosphere model. Nullptr inidicates that there is no atmosphere model.

◆ AudioDevice()

std::string sdf::v12::World::AudioDevice ( ) const

Get the audio device name.

The audio device can be used to playback audio files. A value of "default" or an empty string indicates that the system's default audio device should be used.

Returns
Audio device name.

◆ ClearActors()

void sdf::v12::World::ClearActors ( )

Remove all models.

◆ ClearLights()

void sdf::v12::World::ClearLights ( )

Remove all models.

◆ ClearModels()

void sdf::v12::World::ClearModels ( )

Remove all models.

◆ Element()

sdf::ElementPtr sdf::v12::World::Element ( ) const

Get a pointer to the SDF element that was used during load.

Returns
SDF element pointer. The value will be nullptr if Load has not been called.

◆ FrameByIndex()

const Frame* sdf::v12::World::FrameByIndex ( const uint64_t  _index) const

Get an immediate (not nested) child explicit frame based on an index.

Parameters
[in]_indexIndex of the explicit frame. The index should be in the range [0..FrameCount()).
Returns
Pointer to the explicit frame. Nullptr if the index does not exist.
See also
uint64_t FrameCount() const

◆ FrameByName()

const Frame* sdf::v12::World::FrameByName ( const std::string &  _name) const

Get an explicit frame based on a name.

Parameters
[in]_nameName of the explicit frame. To get a frame in a nested model, prefix the frame name with the sequence of nested models containing this frame, delimited by "::".
Returns
Pointer to the explicit frame. Nullptr if the name does not exist.

◆ FrameCount()

uint64_t sdf::v12::World::FrameCount ( ) const

Get the number of explicit frames that are immediate (not nested) children of this World object.

Remarks
FrameByName() can find explicit frames that are not immediate children of this World object.
Returns
Number of explicit frames contained in this World object.

◆ FrameNameExists()

bool sdf::v12::World::FrameNameExists ( const std::string &  _name) const

Get whether an explicit frame name exists.

Parameters
[in]_nameName of the explicit frame to check. To check for a frame in a nested model, prefix the frame name with the sequence of nested models containing this frame, delimited by "::".
Returns
True if there exists an explicit frame with the given name.

◆ Gravity()

ignition::math::Vector3d sdf::v12::World::Gravity ( ) const

Get the acceleration due to gravity.

The default value is Earth's standard gravity at sea level, which equals [0, 0, -9.80665] \((\frac{m}{s^2})\)

Returns
Gravity vector in meters per second squared \((\frac{m}{s^2})\)

◆ Gui()

const sdf::Gui* sdf::v12::World::Gui ( ) const

Get a pointer to the Gui associated with this world.

A nullptr indicates that a Gui element has not been specified.

Returns
Pointer to this world's Gui parameters. Nullptr inidicates that there are no Gui parameters.

◆ InterfaceModelByIndex()

std::shared_ptr<const InterfaceModel> sdf::v12::World::InterfaceModelByIndex ( const uint64_t  _index) const

Get an immediate (not recursively nested) child interface model based on an index.

Parameters
[in]_indexIndex of the nested interface model. The index should be in the range [0..InterfaceModelCount()).
Returns
Pointer to the model. Nullptr if the index does not exist.
See also
uint64_t InterfaceModelCount() const

◆ InterfaceModelCount()

uint64_t sdf::v12::World::InterfaceModelCount ( ) const

Get the number of nested interface models that are immediate (not recursively nested) children of this World object.

Returns
Number of nested interface models contained in this World object.

◆ InterfaceModelNestedIncludeByIndex()

const NestedInclude* sdf::v12::World::InterfaceModelNestedIncludeByIndex ( const uint64_t  _index) const

Get the nested include information of an immediate (not recursively nested) child interface model based on an index.

Parameters
[in]_indexIndex of the nested interface model. The index should be in the range [0..InterfaceModelCount()).
Returns
Pointer to the nested include information. Nullptr if the index does not exist.
See also
uint64_t InterfaceModelCount() const

◆ LightByIndex()

const Light* sdf::v12::World::LightByIndex ( const uint64_t  _index) const

Get a light based on an index.

Parameters
[in]_indexIndex of the light. The index should be in the range [0..LightCount()).
Returns
Pointer to the light. Nullptr if the index does not exist.
See also
uint64_t LightCount() const

◆ LightCount()

uint64_t sdf::v12::World::LightCount ( ) const

Get the number of lights.

Returns
Number of lights contained in this World object.

◆ LightNameExists()

bool sdf::v12::World::LightNameExists ( const std::string &  _name) const

Get whether a light name exists.

Parameters
[in]_nameName of the light to check.
Returns
True if there exists a light with the given name.

◆ Load() [1/2]

Errors sdf::v12::World::Load ( ElementPtr  _sdf)

Load the world based on a element pointer.

This is not the usual entry point. Typical usage of the SDF DOM is through the Root object.

Parameters
[in]_sdfThe SDF Element pointer
Returns
Errors, which is a vector of Error objects. Each Error includes an error code and message. An empty vector indicates no error.

◆ Load() [2/2]

Errors sdf::v12::World::Load ( sdf::ElementPtr  _sdf,
const ParserConfig _config 
)

Load the world based on a element pointer.

This is not the usual entry point. Typical usage of the SDF DOM is through the Root object.

Parameters
[in]_sdfThe SDF Element pointer
[in]_configCustom parser configuration
Returns
Errors, which is a vector of Error objects. Each Error includes an error code and message. An empty vector indicates no error.

◆ MagneticField()

ignition::math::Vector3d sdf::v12::World::MagneticField ( ) const

Get the magnetic vector in Tesla, expressed in a coordinate frame defined by the SphericalCoordinates property.

A spherical coordinate can be specified in SDF using the <spherical_coordinates> element.

Returns
Magnetic field vector.
See also
SphericalCoordinates

◆ ModelByIndex()

const Model* sdf::v12::World::ModelByIndex ( const uint64_t  _index) const

Get an immediate (not recursively nested) child model based on an index.

Parameters
[in]_indexIndex of the model. The index should be in the range [0..ModelCount()).
Returns
Pointer to the model. Nullptr if the index does not exist.
See also
uint64_t ModelCount() const

◆ ModelByName()

const Model* sdf::v12::World::ModelByName ( const std::string &  _name) const

Get a model based on a name.

Parameters
[in]_nameName of the model. To get a model nested in other models, prefix the model name with the sequence of nested model names, delimited by "::".
Returns
Pointer to the model. Nullptr if a model with the given name does not exist.
See also
bool ModelNameExists(const std::string &_name) const

◆ ModelCount()

uint64_t sdf::v12::World::ModelCount ( ) const

Get the number of models that are immediate (not nested) children of this World object.

Remarks
ModelByName() can find nested models that are not immediate children of this World object.
Returns
Number of models contained in this World object.

◆ ModelNameExists()

bool sdf::v12::World::ModelNameExists ( const std::string &  _name) const

Get whether a model name exists.

Parameters
[in]_nameName of the model to check. To check for a model nested in other models, prefix the model name with the sequence of nested models containing this model, delimited by "::".
Returns
True if there exists a model with the given name.

◆ Name()

std::string sdf::v12::World::Name ( ) const

Get the name of the world.

Returns
Name of the world.

◆ PhysicsByIndex()

const Physics* sdf::v12::World::PhysicsByIndex ( const uint64_t  _index) const

Get a physics profile based on an index.

Parameters
[in]_indexIndex of the physics profile. The index should be in the range [0..PhysicsCount()).
Returns
Pointer to the physics profile. Nullptr if the index does not exist.

◆ PhysicsCount()

uint64_t sdf::v12::World::PhysicsCount ( ) const

Get the number of physics profiles.

Returns
Number of physics profiles contained in this World object.

◆ PhysicsDefault()

const Physics* sdf::v12::World::PhysicsDefault ( ) const

Get the default physics profile.

Returns
Pointer to the default physics profile.

◆ PhysicsNameExists()

bool sdf::v12::World::PhysicsNameExists ( const std::string &  _name) const

Get whether a physics profile name exists.

Parameters
[in]_nameName of the physics profile to check.
Returns
True if there exists a physics profile with the given name.

◆ Scene()

const sdf::Scene* sdf::v12::World::Scene ( ) const

Get a pointer to the Scene associated with this world.

A nullptr indicates that a Scene element has not been specified.

Returns
Pointer to this world's Scene parameters. Nullptr inidicates that there are no Scene parameters.

◆ SetAtmosphere()

void sdf::v12::World::SetAtmosphere ( const sdf::Atmosphere _atmosphere)

Set the atmosphere model associated with this world.

Parameters
[in]_atmosphereThe new atmosphere model for this world.

◆ SetAudioDevice()

void sdf::v12::World::SetAudioDevice ( const std::string &  _device)

Set the audio device name.

See std::string AudioDevice() const for more information.

Parameters
[in]_deviceThe new audio device name.
See also
std::string AudioDevice() const

◆ SetGravity()

void sdf::v12::World::SetGravity ( const ignition::math::Vector3d &  _gravity)

Set the acceleration due to gravity.

Units are meters per second squared \((\frac{m}{s^2})\)

Parameters
[in]_gravityThe new gravity vector.

◆ SetGui()

void sdf::v12::World::SetGui ( const sdf::Gui _gui)

Set the Gui parameters associated with this world.

Parameters
[in]_guiThe new Gui parameter for this world

◆ SetMagneticField()

void sdf::v12::World::SetMagneticField ( const ignition::math::Vector3d &  _mag)

Set the magnetic vector in Tesla, expressed in a coordinate frame defined by the SphericalCoordinate.

A spherical coordinate can be specified in SDF using the <spherical_coordinates> element.

Parameters
[in]_magThe new magnetic field vector.
See also
SphericalCoordinates

◆ SetName()

void sdf::v12::World::SetName ( const std::string &  _name)

Set the name of the world.

Parameters
[in]_nameName of the world.

◆ SetScene()

void sdf::v12::World::SetScene ( const sdf::Scene _scene)

Set the Scene parameters associated with this world.

Parameters
[in]_guiThe new Scene parameter for this world

◆ SetSphericalCoordinates()

void sdf::v12::World::SetSphericalCoordinates ( const ignition::math::SphericalCoordinates &  _coord)

Set the spherical coordinates for the world origin.

Parameters
[in]_coordThe new coordinates for the world origin.

◆ SetWindLinearVelocity()

void sdf::v12::World::SetWindLinearVelocity ( const ignition::math::Vector3d &  _wind)

Set the wind linear velocity in the global/world coordinate frame.

Units are meters per second \((\frac{m}{s})\)

Parameters
[in]_windThe new linear velocity of wind.
See also
ignition::math::Vector3d WindLinearVelocity() const

◆ SphericalCoordinates()

const ignition::math::SphericalCoordinates* sdf::v12::World::SphericalCoordinates ( ) const

Get the spherical coordinates for the world origin.

Returns
Spherical coordinates or null if not defined.

◆ ValidateGraphs()

Errors sdf::v12::World::ValidateGraphs ( ) const

Check that the FrameAttachedToGraph and PoseRelativeToGraph are valid.

Returns
Errors, which is a vector of Error objects. Each Error includes an error code and message. An empty vector indicates no error.

◆ WindLinearVelocity()

ignition::math::Vector3d sdf::v12::World::WindLinearVelocity ( ) const

Get the wind linear velocity in the global/world coordinate frame.

Units are meters per second \((\frac{m}{s})\)

Returns
Linear velocity of wind in the global/world coordinate frame.
See also
void SetWindLinearVelocity(const ignition::math::Vector3d &_wind)

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