All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Public Member Functions | Public Attributes | List of all members
gazebo::rendering::Scene Class Reference

Representation of an entire scene graph. More...

#include <rendering/rendering.hh>

Inheritance diagram for gazebo::rendering::Scene:
Inheritance graph
[legend]

Public Member Functions

 Scene (const std::string &_name, bool _enableVisualizations=false)
 Constructor.
 
virtual ~Scene ()
 Destructor.
 
void AddVisual (VisualPtr _vis)
 Add a visual to the scene.
 
void Clear ()
 Clear rendering::Scene.
 
VisualPtr CloneVisual (const std::string &_visualName, const std::string &_newName)
 Clone a visual.
 
CameraPtr CreateCamera (const std::string &_name, bool _autoRender=true)
 Create a camera.
 
DepthCameraPtr CreateDepthCamera (const std::string &_name, bool _autoRender=true)
 Create depth camera.
 
GpuLaserPtr CreateGpuLaser (const std::string &_name, bool _autoRender=true)
 Create laser that generates data from rendering.
 
void CreateGrid (uint32_t _cellCount, float _cellLength, float _lineWidth, const common::Color &_color)
 Create a square grid of cells.
 
UserCameraPtr CreateUserCamera (const std::string &_name)
 Create a user camera.
 
void DrawLine (const math::Vector3 &_start, const math::Vector3 &_end, const std::string &_name)
 Draw a named line.
 
common::Color GetAmbientColor () const
 Get the ambient color.
 
common::Color GetBackgroundColor () const
 Get the background color.
 
CameraPtr GetCamera (uint32_t _index) const
 Get a camera based on an index.
 
CameraPtr GetCamera (const std::string &_name) const
 Get a camera by name.
 
uint32_t GetCameraCount () const
 Get the number of cameras in this scene.
 
math::Vector3 GetFirstContact (CameraPtr _camera, const math::Vector2i &_mousePos)
 Get the world pos of a the first contact at a pixel location.
 
GridGetGrid (uint32_t _index) const
 Get a grid based on an index.
 
uint32_t GetGridCount () const
 Get the number of grids.
 
HeightmapGetHeightmap () const
 Get a pointer to the heightmap.
 
uint32_t GetId () const
 Get the scene ID.
 
std::string GetIdString () const
 Get the scene Id as a string.
 
LightPtr GetLight (const std::string &_name) const
 Get a light by name.
 
LightPtr GetLight (uint32_t _index) const
 Get a light based on an index.
 
uint32_t GetLightCount () const
 Get the count of the lights.
 
Ogre::SceneManager * GetManager () const
 Get the OGRE scene manager.
 
VisualPtr GetModelVisualAt (CameraPtr _camera, const math::Vector2i &_mousePos)
 Get a model's visual at a mouse position.
 
std::string GetName () const
 Get the name of the scene.
 
VisualPtr GetSelectedVisual () const
 Get the currently selected visual.
 
bool GetShadowsEnabled () const
 Get whether shadows are on or off.
 
UserCameraPtr GetUserCamera (uint32_t _index) const
 Get a user camera by index.
 
uint32_t GetUserCameraCount () const
 Get the number of user cameras in this scene.
 
VisualPtr GetVisual (const std::string &_name) const
 Get a visual by name.
 
VisualPtr GetVisualAt (CameraPtr _camera, const math::Vector2i &_mousePos, std::string &mod)
 Get an entity at a pixel location using a camera.
 
VisualPtr GetVisualAt (CameraPtr _camera, const math::Vector2i &_mousePos)
 Get a visual at a mouse position.
 
VisualPtr GetVisualBelow (const std::string &_visualName)
 Get the closest visual below a given visual.
 
void GetVisualsBelowPoint (const math::Vector3 &_pt, std::vector< VisualPtr > &_visuals)
 Get a visual directly below a point.
 
VisualPtr GetWorldVisual () const
 Get the top level world visual.
 
void Init ()
 Init rendering::Scene.
 
void Load (sdf::ElementPtr _scene)
 Load the scene from a set of parameters.
 
void Load ()
 Load the scene with default parameters.
 
void PreRender ()
 Process all received messages.
 
void PrintSceneGraph ()
 Print the scene graph to std_out.
 
void RemoveVisual (VisualPtr _vis)
 Remove a visual from the scene.
 
void SelectVisual (const std::string &_name, const std::string &_mode)
 Select a visual by name.
 
void SetAmbientColor (const common::Color &_color)
 Set the ambient color.
 
void SetBackgroundColor (const common::Color &_color)
 Set the background color.
 
void SetFog (const std::string &_type, const common::Color &_color, double _density, double _start, double _end)
 Set the fog parameters.
 
void SetGrid (bool _enabled)
 Set the grid on or off.
 
void SetShadowsEnabled (bool _value)
 Set whether shadows are on or off.
 
void SetVisible (const std::string &_name, bool _visible)
 Hide or show a visual.
 
void SnapVisualToNearestBelow (const std::string &_visualName)
 Move the visual to be ontop of the nearest visual below it.
 
std::string StripSceneName (const std::string &_name) const
 Remove the name of scene from a string.
 

Public Attributes

SkyX::SkyX * skyx
 Pointer to the sky.
 

Detailed Description

Representation of an entire scene graph.

Maintains all the Visuals, Lights, and Cameras for a World.

Constructor & Destructor Documentation

gazebo::rendering::Scene::Scene ( const std::string &  _name,
bool  _enableVisualizations = false 
)

Constructor.

Parameters
[in]_nameName of the scene.
[in]_enableVisualizationsTrue to enable visualizations, this should be set to true for user interfaces, and false for sensor generation.
virtual gazebo::rendering::Scene::~Scene ( )
virtual

Destructor.

Member Function Documentation

void gazebo::rendering::Scene::AddVisual ( VisualPtr  _vis)

Add a visual to the scene.

Parameters
[in]_visVisual to add.
void gazebo::rendering::Scene::Clear ( )
VisualPtr gazebo::rendering::Scene::CloneVisual ( const std::string &  _visualName,
const std::string &  _newName 
)

Clone a visual.

Parameters
[in]_visualNameName of the visual to clone.
[in]_newNameNew name of the visual.
Returns
Pointer to the cloned visual.
CameraPtr gazebo::rendering::Scene::CreateCamera ( const std::string &  _name,
bool  _autoRender = true 
)

Create a camera.

Parameters
[in]_nameName of the new camera.
[in]_autoRenderTrue to allow Gazebo to automatically render the camera. This should almost always be true.
Returns
Pointer to the new camera.
DepthCameraPtr gazebo::rendering::Scene::CreateDepthCamera ( const std::string &  _name,
bool  _autoRender = true 
)

Create depth camera.

Parameters
[in]_nameName of the new camera.
[in]_autoRenderTrue to allow Gazebo to automatically render the camera. This should almost always be true.
Returns
Pointer to the new camera.
GpuLaserPtr gazebo::rendering::Scene::CreateGpuLaser ( const std::string &  _name,
bool  _autoRender = true 
)

Create laser that generates data from rendering.

Parameters
[in]_nameName of the new laser.
[in]_autoRenderTrue to allow Gazebo to automatically render the camera. This should almost always be true.
Returns
Pointer to the new laser.
void gazebo::rendering::Scene::CreateGrid ( uint32_t  _cellCount,
float  _cellLength,
float  _lineWidth,
const common::Color _color 
)

Create a square grid of cells.

Parameters
[in]_cellCountNumber of grid cells in one direction.
[in]_cellLengthLength of one grid cell.
[in]_lineWidthWidth of the grid lines.
[in]_colorColor of the grid lines.
UserCameraPtr gazebo::rendering::Scene::CreateUserCamera ( const std::string &  _name)

Create a user camera.

A user camera is one design for use with a GUI.

Parameters
[in]_nameName of the UserCamera.
Returns
A pointer to the new UserCamera.
void gazebo::rendering::Scene::DrawLine ( const math::Vector3 _start,
const math::Vector3 _end,
const std::string &  _name 
)

Draw a named line.

Parameters
[in]_startStart position of the line.
[in]_endEnd position of the line.
[in]_nameName of the line.
common::Color gazebo::rendering::Scene::GetAmbientColor ( ) const

Get the ambient color.

Returns
The scene's ambient color.
common::Color gazebo::rendering::Scene::GetBackgroundColor ( ) const

Get the background color.

Returns
The background color.
CameraPtr gazebo::rendering::Scene::GetCamera ( uint32_t  _index) const

Get a camera based on an index.

Index must be between 0 and Scene::GetCameraCount.

Parameters
[in]_indexIndex of the camera to get.
Returns
Pointer to the camera. Or NULL if the index is invalid.
CameraPtr gazebo::rendering::Scene::GetCamera ( const std::string &  _name) const

Get a camera by name.

Parameters
[in]_nameName of the camera.
Returns
Pointer to the camera. Or NULL if the name is invalid.
uint32_t gazebo::rendering::Scene::GetCameraCount ( ) const

Get the number of cameras in this scene.

Returns
Number of lasers.
math::Vector3 gazebo::rendering::Scene::GetFirstContact ( CameraPtr  _camera,
const math::Vector2i _mousePos 
)

Get the world pos of a the first contact at a pixel location.

Parameters
[in]_cameraPointer to the camera.
[in]_mousePos2D position of the mouse in pixels.
Returns
3D position of the first contact point.
Grid* gazebo::rendering::Scene::GetGrid ( uint32_t  _index) const

Get a grid based on an index.

Index must be between 0 and Scene::GetGridCount.

Parameters
[in]_indexIndex of the grid.
uint32_t gazebo::rendering::Scene::GetGridCount ( ) const

Get the number of grids.

Returns
The number of grids.
Heightmap* gazebo::rendering::Scene::GetHeightmap ( ) const

Get a pointer to the heightmap.

Returns
Pointer to the heightmap, NULL if no heightmap.
uint32_t gazebo::rendering::Scene::GetId ( ) const

Get the scene ID.

Returns
The ID of the scene.
std::string gazebo::rendering::Scene::GetIdString ( ) const

Get the scene Id as a string.

Returns
The ID as a string.
LightPtr gazebo::rendering::Scene::GetLight ( const std::string &  _name) const

Get a light by name.

Parameters
[in]_nameName of the light to get.
Returns
Pointer to the light, or NULL if the light was not found.
LightPtr gazebo::rendering::Scene::GetLight ( uint32_t  _index) const

Get a light based on an index.

The index must be between 0 and Scene::GetLightCount.

Parameters
[in]_indexIndex of the light.
Returns
Pointer to the Light or NULL if index was invalid.
uint32_t gazebo::rendering::Scene::GetLightCount ( ) const

Get the count of the lights.

Returns
The number of lights.
Ogre::SceneManager* gazebo::rendering::Scene::GetManager ( ) const

Get the OGRE scene manager.

Returns
Pointer to the Ogre SceneManager.
VisualPtr gazebo::rendering::Scene::GetModelVisualAt ( CameraPtr  _camera,
const math::Vector2i _mousePos 
)

Get a model's visual at a mouse position.

Parameters
[in]_cameraPointer to the camera used to project the mouse position.
[in]_mousePosThe 2d position of the mouse in pixels.
Returns
Pointer to the visual, NULL if none found.
std::string gazebo::rendering::Scene::GetName ( ) const

Get the name of the scene.

Returns
Name of the scene.
VisualPtr gazebo::rendering::Scene::GetSelectedVisual ( ) const

Get the currently selected visual.

Returns
Pointer to the currently selected visual, or NULL if nothing is selected.
bool gazebo::rendering::Scene::GetShadowsEnabled ( ) const

Get whether shadows are on or off.

Returns
True if shadows are enabled.
UserCameraPtr gazebo::rendering::Scene::GetUserCamera ( uint32_t  _index) const

Get a user camera by index.

The index value must be between 0 and Scene::GetUserCameraCount.

Parameters
[in]_indexIndex of the UserCamera to get.
Returns
Pointer to the UserCamera, or NULL if the index was invalid.
uint32_t gazebo::rendering::Scene::GetUserCameraCount ( ) const

Get the number of user cameras in this scene.

Returns
The number of user cameras.
VisualPtr gazebo::rendering::Scene::GetVisual ( const std::string &  _name) const

Get a visual by name.

VisualPtr gazebo::rendering::Scene::GetVisualAt ( CameraPtr  _camera,
const math::Vector2i _mousePos,
std::string &  mod 
)

Get an entity at a pixel location using a camera.

Used for mouse picking.

Parameters
[in]cameraThe ogre camera, used to do mouse picking
[in]mousePosThe position of the mouse in screen coordinates
[out]_modUsed for object manipulation
Returns
The selected entity, or NULL
VisualPtr gazebo::rendering::Scene::GetVisualAt ( CameraPtr  _camera,
const math::Vector2i _mousePos 
)

Get a visual at a mouse position.

Parameters
[in]_cameraPointer to the camera used to project the mouse position.
[in]_mousePosThe 2d position of the mouse in pixels.
Returns
Pointer to the visual, NULL if none found.
VisualPtr gazebo::rendering::Scene::GetVisualBelow ( const std::string &  _visualName)

Get the closest visual below a given visual.

Parameters
[in]_visualNameName of the visual to search below.
Returns
Pointer to the visual below, or NULL if no visual.
void gazebo::rendering::Scene::GetVisualsBelowPoint ( const math::Vector3 _pt,
std::vector< VisualPtr > &  _visuals 
)

Get a visual directly below a point.

Parameters
[in]_pt3D point to get the visual below.
[out]_visualsThe visuals below the point order in proximity.
VisualPtr gazebo::rendering::Scene::GetWorldVisual ( ) const

Get the top level world visual.

Returns
Pointer to the world visual.
void gazebo::rendering::Scene::Init ( )
void gazebo::rendering::Scene::Load ( sdf::ElementPtr  _scene)

Load the scene from a set of parameters.

Parameters
[in]_sceneSDF scene element to load.
void gazebo::rendering::Scene::Load ( )

Load the scene with default parameters.

void gazebo::rendering::Scene::PreRender ( )

Process all received messages.

void gazebo::rendering::Scene::PrintSceneGraph ( )

Print the scene graph to std_out.

void gazebo::rendering::Scene::RemoveVisual ( VisualPtr  _vis)

Remove a visual from the scene.

Parameters
[in]_visVisual to remove.
void gazebo::rendering::Scene::SelectVisual ( const std::string &  _name,
const std::string &  _mode 
)

Select a visual by name.

Parameters
[in]_nameName of the visual to select.
[in]_modeSelection mode (normal, or move).
void gazebo::rendering::Scene::SetAmbientColor ( const common::Color _color)

Set the ambient color.

Parameters
[in]_colorThe ambient color to use.
void gazebo::rendering::Scene::SetBackgroundColor ( const common::Color _color)

Set the background color.

Parameters
[in]_colorThe background color.
void gazebo::rendering::Scene::SetFog ( const std::string &  _type,
const common::Color _color,
double  _density,
double  _start,
double  _end 
)

Set the fog parameters.

Parameters
[in]_typeType of fog: "linear", "exp", or "exp2".
[in]_colorColor of the fog.
[in]_densityFog density.
[in]_startDistance from camera to start the fog.
[in]_endDistance from camera at which the fog is at max density.
void gazebo::rendering::Scene::SetGrid ( bool  _enabled)

Set the grid on or off.

Parameters
[in]_enabledSet to true to turn on the grid
void gazebo::rendering::Scene::SetShadowsEnabled ( bool  _value)

Set whether shadows are on or off.

Parameters
[in]_valueTrue to enable shadows, False to disable
void gazebo::rendering::Scene::SetVisible ( const std::string &  _name,
bool  _visible 
)

Hide or show a visual.

Parameters
[in]_nameName of the visual to change.
[in]_visibleTrue to make visual visible, False to make it invisible.
void gazebo::rendering::Scene::SnapVisualToNearestBelow ( const std::string &  _visualName)

Move the visual to be ontop of the nearest visual below it.

Parameters
[in]_visualNameName of the visual to move.
std::string gazebo::rendering::Scene::StripSceneName ( const std::string &  _name) const

Remove the name of scene from a string.

Parameters
[in]_nameName to string the scene name from.
Returns
The stripped name.

Member Data Documentation

SkyX::SkyX* gazebo::rendering::Scene::skyx

Pointer to the sky.


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