Ignition Rendering

API Reference

4.1.0

#include <OgreScene.hh>

Public Member Functions

virtual ~OgreScene ()
 
virtual math::Color AmbientLight () const
 Get the scene ambient light color. More...
 
virtual void Clear ()
 Remove and destroy all objects from the scene graph. This does not completely destroy scene resources, so new objects can be created and added to the scene afterwards. More...
 
virtual void Destroy ()
 Completely destroy the scene an all its resources. Continued use of this scene after its destruction will result in undefined behavior. More...
 
virtual RenderEngineEngine () const
 Get the creating render-engine of the scene. More...
 
virtual void Fini ()
 
virtual Ogre::SceneManager * OgreSceneManager () const
 
virtual void PreRender ()
 Prepare scene for rendering. The scene will flushing any scene changes by traversing scene-graph, calling PreRender on all objects. More...
 
virtual void RemoveGradientBackgroundColor ()
 Remove the scene gradient background color. More...
 
virtual VisualPtr RootVisual () const
 Get root Visual node. All nodes that are desired to be rendered in a scene should be added to this Visual or one of its ancestors in the scene-graph. Nodes created by this Scene will not be added to the scene by default. More...
 
virtual void SetAmbientLight (const math::Color &_color)
 Set the scene ambient light color. More...
 
virtual void SetBackgroundColor (const math::Color &_color)
 Set the scene background color. More...
 
virtual void SetGradientBackgroundColor (const std::array< math::Color, 4 > &_colors)
 Set a custom gradient background color on top of the regular background. Default should be black. More...
 
- Public Member Functions inherited from BaseScene
virtual ~BaseScene ()
 
virtual math::Color BackgroundColor () const override
 Get the scene background color. More...
 
virtual ArrowVisualPtr CreateArrowVisual () override
 Create new arrow visual. A unique ID and name will automatically be assigned to the visual. More...
 
virtual ArrowVisualPtr CreateArrowVisual (unsigned int _id) override
 Create new arrow visual with the given ID. A unique name will automatically be assigned to the visual. If the given ID is already in use, NULL will be returned. More...
 
virtual ArrowVisualPtr CreateArrowVisual (const std::string &_name) override
 Create new arrow visual with the given name. A unique ID will automatically be assigned to the visual. If the given name is already in use, NULL will be returned. More...
 
virtual ArrowVisualPtr CreateArrowVisual (unsigned int _id, const std::string &_name) override
 Create new arrow visual with the given name. If either the given ID or name is already in use, NULL will be returned. More...
 
virtual AxisVisualPtr CreateAxisVisual () override
 Create new axis visual. A unique ID and name will automatically be assigned to the visual. More...
 
virtual AxisVisualPtr CreateAxisVisual (unsigned int _id) override
 Create new axis visual with the given ID. A unique name will automatically be assigned to the visual. If the given ID is already in use, NULL will be returned. More...
 
virtual AxisVisualPtr CreateAxisVisual (const std::string &_name) override
 Create new axis visual with the given name. A unique ID will automatically be assigned to the visual. If the given name is already in use, NULL will be returned. More...
 
virtual AxisVisualPtr CreateAxisVisual (unsigned int _id, const std::string &_name) override
 Create new axis visual with the given name. If either the given ID or name is already in use, NULL will be returned. More...
 
virtual GeometryPtr CreateBox () override
 Create new box geometry. More...
 
virtual CameraPtr CreateCamera () override
 Create new camera. A unique ID and name will automatically be assigned to the camera. More...
 
virtual CameraPtr CreateCamera (unsigned int _id) override
 Create new camera with the given ID. A unique name will automatically be assigned to the camera. If the given ID is already in use, NULL will be returned. More...
 
virtual CameraPtr CreateCamera (const std::string &_name) override
 Create new camera with the given name. A unique ID will automatically be assigned to the camera. If the given name is already in use, NULL will be returned. More...
 
virtual CameraPtr CreateCamera (unsigned int _id, const std::string &_name) override
 Create new camera with the given name. If either the given ID or name is already in use, NULL will be returned. More...
 
virtual GeometryPtr CreateCone () override
 Create new cone geometry. More...
 
virtual GeometryPtr CreateCylinder () override
 Create new cylinder geometry. More...
 
virtual DepthCameraPtr CreateDepthCamera () override
 Create new depth camera. A unique ID and name will automatically be assigned to the camera. More...
 
virtual DepthCameraPtr CreateDepthCamera (const unsigned int _id) override
 Create new depth camera with the given ID. A unique name will automatically be assigned to the camera. If the given ID is already in use, NULL will be returned. More...
 
virtual DepthCameraPtr CreateDepthCamera (const std::string &_name) override
 Create new depth camera with the given name. A unique ID will automatically be assigned to the camera. If the given name is already in use, NULL will be returned. More...
 
virtual DepthCameraPtr CreateDepthCamera (const unsigned int _id, const std::string &_name) override
 Create new depth camera with the given name. If either the given ID or name is already in use, NULL will be returned. More...
 
virtual DirectionalLightPtr CreateDirectionalLight () override
 Create new directional light. A unique ID and name will automatically be assigned to the light. More...
 
virtual DirectionalLightPtr CreateDirectionalLight (unsigned int _id) override
 Create new directional light with the given ID. A unique name will automatically be assigned to the light. If the given ID is already in use, NULL will be returned. More...
 
virtual DirectionalLightPtr CreateDirectionalLight (const std::string &_name) override
 Create new directional light with the given name. A unique ID will automatically be assigned to the light. If the given name is already in use, NULL will be returned. More...
 
virtual DirectionalLightPtr CreateDirectionalLight (unsigned int _id, const std::string &_name) override
 Create new directional light with the given name. If either the given ID or name is already in use, NULL will be returned. More...
 
virtual GizmoVisualPtr CreateGizmoVisual () override
 Create new gizmo visual. A unique ID and name will automatically be assigned to the visual. More...
 
virtual GizmoVisualPtr CreateGizmoVisual (unsigned int _id) override
 Create new gizmo visual with the given ID. A unique name will automatically be assigned to the visual. If the given ID is already in use, NULL will be returned. More...
 
virtual GizmoVisualPtr CreateGizmoVisual (const std::string &_name) override
 Create new gizmo visual with the given name. A unique ID will automatically be assigned to the visual. If the given name is already in use, NULL will be returned. More...
 
virtual GizmoVisualPtr CreateGizmoVisual (unsigned int _id, const std::string &_name) override
 Create new gizmo visual with the given name. If either the given ID or name is already in use, NULL will be returned. More...
 
virtual GpuRaysPtr CreateGpuRays () override
 Create new gpu rays caster. A unique ID and name will automatically be assigned to the gpu rays caster. More...
 
virtual GpuRaysPtr CreateGpuRays (const unsigned int _id) override
 Create new gpu rays caster with the given ID. A unique name will automatically be assigned to the gpu rays caster. If the given ID is already in use, NULL will be returned. More...
 
virtual GpuRaysPtr CreateGpuRays (const std::string &_name) override
 Create new gpu rays caster with the given name. A unique ID will automatically be assigned to the gpu rays caster. If the given name is already in use, NULL will be returned. More...
 
virtual GpuRaysPtr CreateGpuRays (const unsigned int _id, const std::string &_name) override
 Create new gpu rays caster with the given name. If either the given ID or name is already in use, NULL will be returned. More...
 
virtual GridPtr CreateGrid () override
 Create new grid geometry. More...
 
virtual LidarVisualPtr CreateLidarVisual () override
 Create new lidar visual. A unique ID and name will automatically be assigned to the lidar visual. More...
 
virtual LidarVisualPtr CreateLidarVisual (unsigned int _id) override
 Create new lidar visual with the given ID. A unique name will automatically be assigned to the lidar visual. If the given ID is already in use, NULL will be returned. More...
 
virtual LidarVisualPtr CreateLidarVisual (const std::string &_name) override
 Create new lidar visual with the given name. A unique ID will automatically be assigned to the lidar visual. If the given name is already in use, NULL will be returned. More...
 
virtual LidarVisualPtr CreateLidarVisual (unsigned int _id, const std::string &_name) override
 Create new lidar visual with the given name. If either the given ID or name is already in use, NULL will be returned. More...
 
virtual MarkerPtr CreateMarker () override
 Create new marker geometry. More...
 
virtual MaterialPtr CreateMaterial (const std::string &_name="") override
 Create new material with the given name. Created material will have default properties. More...
 
virtual MaterialPtr CreateMaterial (const common::Material &_material) override
 Create new material from the reference common::Material. More...
 
virtual MeshPtr CreateMesh (const std::string &_meshName) override
 Create new mesh geomerty. The rendering::Mesh will be created from a common::Mesh retrieved from common::MeshManager using the given mesh name. If no mesh exists by this name, NULL will be returned. All sub-meshes will be loaded into the created mesh, uncentered. More...
 
virtual MeshPtr CreateMesh (const common::Mesh *_mesh) override
 Create new mesh geomerty. The rendering::Mesh will be created from the given common::Mesh. All sub-meshes will be loaded into this created mesh, uncentered. More...
 
virtual MeshPtr CreateMesh (const MeshDescriptor &_desc) override
 Create new mesh geometry. The rendering::Mesh will be created from the given common::Mesh specified in the MeshDescriptor. Sub-meshes will be loaded and centered according to the descriptor. More...
 
virtual ParticleEmitterPtr CreateParticleEmitter () override
 Create new particle emitter. A unique ID and name will automatically be assigned to the visual. More...
 
virtual ParticleEmitterPtr CreateParticleEmitter (unsigned int _id) override
 Create new particle emitter with the given ID. A unique name will automatically be assigned to the visual. If the given ID is already in use, NULL will be returned. More...
 
virtual ParticleEmitterPtr CreateParticleEmitter (const std::string &_name) override
 Create new particle emitter with the given name. A unique ID will automatically be assigned to the visual. If the given name is already in use, NULL will be returned. More...
 
virtual ParticleEmitterPtr CreateParticleEmitter (unsigned int _id, const std::string &_name) override
 Create new particle emitter with the given name. If either the given ID or name is already in use, NULL will be returned. More...
 
virtual GeometryPtr CreatePlane () override
 Create new plane geometry. More...
 
virtual PointLightPtr CreatePointLight () override
 Create new point light. A unique ID and name will automatically be assigned to the light. More...
 
virtual PointLightPtr CreatePointLight (unsigned int _id) override
 Create new point light with the given ID. A unique name will automatically be assigned to the light. If the given ID is already in use, NULL will be returned. More...
 
virtual PointLightPtr CreatePointLight (const std::string &_name) override
 Create new point light with the given name. A unique ID will automatically be assigned to the light. If the given name is already in use, NULL will be returned. More...
 
virtual PointLightPtr CreatePointLight (unsigned int _id, const std::string &_name) override
 Create new point light with the given name. If either the given ID or name is already in use, NULL will be returned. More...
 
virtual RayQueryPtr CreateRayQuery () override
 Create new ray query. More...
 
virtual RenderTexturePtr CreateRenderTexture () override
 Create new render texture. More...
 
virtual RenderWindowPtr CreateRenderWindow () override
 Create new render window. This feature is render engine dependent. If the engine does not support attaching to a windowing system then it should behave as a a render texture. More...
 
virtual GeometryPtr CreateSphere () override
 Create new sphere geometry. More...
 
virtual SpotLightPtr CreateSpotLight () override
 Create new spotlight. A unique ID and name will automatically be assigned to the light. More...
 
virtual SpotLightPtr CreateSpotLight (unsigned int _id) override
 Create new spotlight with the given ID. A unique name will automatically be assigned to the light. If the given ID is already in use, NULL will be returned. More...
 
virtual SpotLightPtr CreateSpotLight (const std::string &_name) override
 Create new spotlight with the given name. A unique ID will automatically be assigned to the light. If the given name is already in use, NULL will be returned. More...
 
virtual SpotLightPtr CreateSpotLight (unsigned int _id, const std::string &_name) override
 Create new spotlight with the given name. If either the given ID or name is already in use, NULL will be returned. More...
 
virtual TextPtr CreateText () override
 Create new text geometry. More...
 
virtual ThermalCameraPtr CreateThermalCamera () override
 Create new thermal camera. A unique ID and name will automatically be assigned to the camera. More...
 
virtual ThermalCameraPtr CreateThermalCamera (const unsigned int _id) override
 Create new thermal camera with the given ID. A unique name will automatically be assigned to the camera. If the given ID is already in use, NULL will be returned. More...
 
virtual ThermalCameraPtr CreateThermalCamera (const std::string &_name) override
 Create new thermal camera with the given name. A unique ID will automatically be assigned to the camera. If the given name is already in use, NULL will be returned. More...
 
virtual ThermalCameraPtr CreateThermalCamera (const unsigned int _id, const std::string &_name) override
 Create new thermal camera with the given name. If either the given ID or name is already in use, NULL will be returned. More...
 
virtual VisualPtr CreateVisual () override
 Create new visual. A unique ID and name will automatically be assigned to the visual. More...
 
virtual VisualPtr CreateVisual (unsigned int _id) override
 Create new visual with the given ID. A unique name will automatically be assigned to the visual. If the given ID is already in use, NULL will be returned. More...
 
virtual VisualPtr CreateVisual (const std::string &_name) override
 Create new visual with the given name. A unique ID will automatically be assigned to the visual. If the given name is already in use, NULL will be returned. More...
 
virtual VisualPtr CreateVisual (unsigned int _id, const std::string &_name) override
 Create new visual with the given name. If either the given ID or name is already in use, NULL will be returned. More...
 
virtual WireBoxPtr CreateWireBox () override
 Create new wire box geometry. More...
 
virtual void DestroyLight (LightPtr _light, bool _recursive=false) override
 Destroy given light. If the given light is not managed by this scene, no work will be done. Depending on the _recursive argument, this function will either detach all child nodes from the scene graph or recursively destroy them. More...
 
virtual void DestroyLightById (unsigned int _id) override
 Destroy light with the given id. If no light exists with the given id, no work will be done. All children of the light will consequently be detached from the scene graph, but not destroyed. More...
 
virtual void DestroyLightByIndex (unsigned int _index) override
 Destroy light at the given index. If no light exists at the given index, no work will be done. All children of the light will consequently be detached from the scene graph, but not destroyed. More...
 
virtual void DestroyLightByName (const std::string &_name) override
 Destroy light with the given name. If no light exists with the given name, no work will be done. All children of the light will consequently be detached from the scene graph, but not destroyed. More...
 
virtual void DestroyLights () override
 Destroy all lights manages by this scene. More...
 
virtual void DestroyMaterial (MaterialPtr _material) override
 Unregister and destroy a material. More...
 
virtual void DestroyMaterials () override
 Unregister and destroys all registered materials. More...
 
virtual void DestroyNode (NodePtr _node, bool _recursive=false) override
 Destroy given node. If the given node is not managed by this scene, no work will be done. Depending on the _recursive argument, this function will either detach all child nodes from the scene graph or recursively destroy them. More...
 
virtual void DestroyNodeById (unsigned int _id) override
 Destroy node with the given id. If no node exists with the given id, no work will be done. All children of the node will consequently be detached from the scene graph, but not destroyed. More...
 
virtual void DestroyNodeByIndex (unsigned int _index) override
 Destroy node at the given index. If no node exists at the given index, no work will be done. All children of the node will consequently be detached from the scene graph, but not destroyed. More...
 
virtual void DestroyNodeByName (const std::string &_name) override
 Destroy node with the given name. If no node exists with the given name, no work will be done. All children of the node will consequently be detached from the scene graph, but not destroyed. More...
 
virtual void DestroyNodes () override
 Destroy all nodes manages by this scene. More...
 
virtual void DestroySensor (SensorPtr _sensor, bool _recursive=false) override
 Destroy given sensor. If the given sensor is not managed by this scene, no work will be done. Depending on the _recursive argument, this function will either detach all child nodes from the scene graph or recursively destroy them. More...
 
virtual void DestroySensorById (unsigned int _id) override
 Destroy sensor with the given id. If no sensor exists with the given id, no work will be done. All children of the sensor will consequently be detached from the scene graph, but not destroyed. More...
 
virtual void DestroySensorByIndex (unsigned int _index) override
 Destroy sensor at the given index. If no sensor exists at the given index, no work will be done. All children of the sensor will consequently be detached from the scene graph, but not destroyed. More...
 
virtual void DestroySensorByName (const std::string &_name) override
 Destroy sensor with the given name. If no sensor exists with the given name, no work will be done. All children of the sensor will consequently be detached from the scene graph, but not destroyed. More...
 
virtual void DestroySensors () override
 Destroy all sensors manages by this scene. More...
 
virtual void DestroyVisual (VisualPtr _visual, bool _recursive=false) override
 Destroy given node. If the given node is not managed by this scene, no work will be done. Depending on the _recursive argument, this function will either detach all child nodes from the scene graph or recursively destroy them. consequently be detached from the scene graph, but not destroyed. More...
 
virtual void DestroyVisualById (unsigned int _id) override
 Destroy node with the given id. If no node exists with the given id, no work will be done. All children of the node will consequently be detached from the scene graph, but not destroyed. More...
 
virtual void DestroyVisualByIndex (unsigned int _index) override
 Destroy node at the given index. If no node exists at the given index, no work will be done. All children of the node will consequently be detached from the scene graph, but not destroyed. More...
 
virtual void DestroyVisualByName (const std::string &_name) override
 Destroy node with the given name. If no node exists with the given name, no work will be done. All children of the node will consequently be detached from the scene graph, but not destroyed. More...
 
virtual void DestroyVisuals () override
 Destroy all nodes manages by this scene. More...
 
virtual std::array< math::Color, 4 > GradientBackgroundColor () const override
 Get the scene gradient background color. More...
 
virtual bool HasLight (ConstLightPtr _light) const override
 Determine if the given light is managed by this Scene. More...
 
virtual bool HasLightId (unsigned int _id) const override
 Determine if a given light with the given id is managed by this Scene. More...
 
virtual bool HasLightName (const std::string &_name) const override
 Determine if a given light with the given name is managed by this Scene. More...
 
virtual bool HasNode (ConstNodePtr _node) const override
 Determine if the given node is managed by this Scene. More...
 
virtual bool HasNodeId (unsigned int _id) const override
 Determine if a given node with the given id is managed by this Scene. More...
 
virtual bool HasNodeName (const std::string &_name) const override
 Determine if a given node with the given name is managed by this Scene. More...
 
virtual bool HasSensor (ConstSensorPtr _sensor) const override
 Determine if the given sensor is managed by this Scene. More...
 
virtual bool HasSensorId (unsigned int _id) const override
 Determine if a given sensor with the given id is managed by this Scene. More...
 
virtual bool HasSensorName (const std::string &_name) const override
 Determine if a given sensor with the given name is managed by this Scene. More...
 
virtual bool HasVisual (ConstVisualPtr _visual) const override
 Determine if the given node is managed by this Scene. More...
 
virtual bool HasVisualId (unsigned int _id) const override
 Determine if a given node with the given id is managed by this Scene. More...
 
virtual bool HasVisualName (const std::string &_name) const override
 Determine if a given node with the given name is managed by this Scene. More...
 
virtual unsigned int Id () const override
 Get the ID of the scene. More...
 
virtual void Init () override
 Initialize the scene. More...
 
virtual bool IsGradientBackgroundColor () const override
 Whether the scene has a gradient background or not (solid) More...
 
virtual bool IsInitialized () const override
 Determine if the scene is initialized. More...
 
virtual bool IsLoaded () const
 
virtual LightPtr LightById (unsigned int _id) const override
 Get light with the given id. If no light exists with the given id, NULL will be returned. More...
 
virtual LightPtr LightByIndex (unsigned int _index) const override
 Get light at the given index. If no light exists at the given index, NULL will be returned. More...
 
virtual LightPtr LightByName (const std::string &_name) const override
 Get light with the given name. If no light exists with the given name, NULL will be returned. More...
 
virtual unsigned int LightCount () const override
 Get the number of lights managed by this scene. Note these lights may not be directly or indirectly attached to the root light. More...
 
virtual void Load () override
 Load scene-specific resources. More...
 
virtual MaterialPtr Material (const std::string &_name) const override
 Get material registered under the given name. If no material is registered under the given name, NULL will be returned. More...
 
virtual bool MaterialRegistered (const std::string &_name) const override
 Determine if a material is registered under the given name. More...
 
virtual std::string Name () const override
 Get the name of the scene. More...
 
virtual NodePtr NodeById (unsigned int _id) const override
 Get node with the given id. If no node exists with the given id, NULL will be returned. More...
 
virtual NodePtr NodeByIndex (unsigned int _index) const override
 Get node at the given index. If no node exists at the given index, NULL will be returned. More...
 
virtual NodePtr NodeByName (const std::string &_name) const override
 Get node with the given name. If no node exists with the given name, NULL will be returned. More...
 
virtual unsigned int NodeCount () const override
 Get the number of nodes managed by this scene. Note these nodes may not be directly or indirectly attached to the root node. More...
 
virtual void RegisterMaterial (const std::string &_name, MaterialPtr _material) override
 Register a new material under the given name. If the name is already in use, no work will be done. More...
 
virtual SensorPtr SensorById (unsigned int _id) const override
 Get sensor with the given id. If no sensor exists with the given id, NULL will be returned. More...
 
virtual SensorPtr SensorByIndex (unsigned int _index) const override
 Get sensor at the given index. If no sensor exists at the given index, NULL will be returned. More...
 
virtual SensorPtr SensorByName (const std::string &_name) const override
 Get sensor with the given name. If no sensor exists with the given name, NULL will be returned. More...
 
virtual unsigned int SensorCount () const override
 Get the number of sensors managed by this scene. Note these sensors may not be directly or indirectly attached to the root sensor. More...
 
virtual void SetAmbientLight (double _r, double _g, double _b, double _a=1.0) override
 Set the scene ambient light color. More...
 
virtual void SetBackgroundColor (double _r, double _g, double _b, double _a=1.0) override
 Set the scene background color. More...
 
virtual void SetSimTime (const common::Time &_time) override
 Set the last simulation update time. More...
 
virtual void SetTime (const std::chrono::steady_clock::duration &_time) override
 Set the last simulation update time. More...
 
virtual common::Time SimTime () const override
 Get the last simulation update time. More...
 
virtual std::chrono::steady_clock::duration Time () const override
 Get the last simulation update time. More...
 
virtual void UnregisterMaterial (const std::string &_name) override
 Unregister material registered under the given name. If no material is registered under this name, no work will be done. More...
 
virtual void UnregisterMaterials () override
 Unregister all registered materials. More...
 
virtual VisualPtr VisualAt (const CameraPtr &_camera, const ignition::math::Vector2i &_mousePos) override
 Get a visual at a mouse position. More...
 
virtual VisualPtr VisualById (unsigned int _id) const override
 Get node with the given id. If no node exists with the given id, NULL will be returned. More...
 
virtual VisualPtr VisualByIndex (unsigned int _index) const override
 Get node at the given index. If no node exists at the given index, NULL will be returned. More...
 
virtual VisualPtr VisualByName (const std::string &_name) const override
 Get node with the given name. If no node exists with the given name, NULL will be returned. More...
 
virtual unsigned int VisualCount () const override
 Get the number of nodes managed by this scene. Note these nodes may not be directly or indirectly attached to the root node. More...
 
- Public Member Functions inherited from enable_shared_from_this< BaseScene >
enable_shared_from_this (T... args)
 
~enable_shared_from_this (T... args)
 
operator= (T... args)
 
shared_from_this (T... args)
 
- Public Member Functions inherited from Scene
virtual ~Scene ()
 Deconstructor. More...
 

Protected Member Functions

 OgreScene (unsigned int _id, const std::string &_name)
 
virtual ArrowVisualPtr CreateArrowVisualImpl (unsigned int _id, const std::string &_name)
 
virtual AxisVisualPtr CreateAxisVisualImpl (unsigned int _id, const std::string &_name)
 
virtual GeometryPtr CreateBoxImpl (unsigned int _id, const std::string &_name)
 
virtual CameraPtr CreateCameraImpl (unsigned int _id, const std::string &_name)
 
virtual GeometryPtr CreateConeImpl (unsigned int _id, const std::string &_name)
 
virtual GeometryPtr CreateCylinderImpl (unsigned int _id, const std::string &_name)
 
virtual DepthCameraPtr CreateDepthCameraImpl (const unsigned int _id, const std::string &_name)
 
virtual DirectionalLightPtr CreateDirectionalLightImpl (unsigned int _id, const std::string &_name)
 
virtual GizmoVisualPtr CreateGizmoVisualImpl (unsigned int _id, const std::string &_name)
 Implementation for creating a GizmoVisual. More...
 
virtual GpuRaysPtr CreateGpuRaysImpl (const unsigned int _id, const std::string &_name)
 Implementation for creating GpuRays sensor. More...
 
virtual GridPtr CreateGridImpl (unsigned int _id, const std::string &_name)
 Implementation for creating a grid geometry object. More...
 
virtual LidarVisualPtr CreateLidarVisualImpl (unsigned int _id, const std::string &_name)
 Implementation for creating a lidar visual. More...
 
virtual MarkerPtr CreateMarkerImpl (unsigned int _id, const std::string &_name)
 Implementation for creating a marker geometry object. More...
 
virtual MaterialPtr CreateMaterialImpl (unsigned int _id, const std::string &_name)
 
virtual MeshPtr CreateMeshImpl (unsigned int _id, const std::string &_name, const std::string &_meshName)
 
virtual MeshPtr CreateMeshImpl (unsigned int _id, const std::string &_name, const MeshDescriptor &_desc)
 
virtual ParticleEmitterPtr CreateParticleEmitterImpl (unsigned int _id, const std::string &_name)
 Implementation for creating a ParticleEmitter. More...
 
virtual GeometryPtr CreatePlaneImpl (unsigned int _id, const std::string &_name)
 
virtual PointLightPtr CreatePointLightImpl (unsigned int _id, const std::string &_name)
 
virtual RayQueryPtr CreateRayQueryImpl (unsigned int _id, const std::string &_name)
 
virtual RenderTexturePtr CreateRenderTextureImpl (unsigned int _id, const std::string &_name)
 
virtual RenderWindowPtr CreateRenderWindowImpl (unsigned int _id, const std::string &_name)
 Render engine specific implementation for creating a render window. More...
 
virtual GeometryPtr CreateSphereImpl (unsigned int _id, const std::string &_name)
 
virtual SpotLightPtr CreateSpotLightImpl (unsigned int _id, const std::string &_name)
 
virtual TextPtr CreateTextImpl (unsigned int _id, const std::string &_name)
 Implementation for creating a text's geometry object. More...
 
virtual ThermalCameraPtr CreateThermalCameraImpl (const unsigned int _id, const std::string &_name)
 Implementation for creating a thermal camera. More...
 
virtual VisualPtr CreateVisualImpl (unsigned int _id, const std::string &_name)
 
virtual WireBoxPtr CreateWireBoxImpl (unsigned int _id, const std::string &_name)
 Implementation for creating a wire box geometry. More...
 
virtual bool InitImpl ()
 
virtual bool InitObject (OgreObjectPtr _object, unsigned int _id, const std::string &_name)
 
virtual LightStorePtr Lights () const
 
virtual bool LoadImpl ()
 
virtual MaterialMapPtr Materials () const
 
virtual SensorStorePtr Sensors () const
 
virtual VisualStorePtr Visuals () const
 
- Protected Member Functions inherited from BaseScene
 BaseScene (unsigned int _id, const std::string &_name)
 
virtual unsigned int CreateObjectId ()
 
virtual std::string CreateObjectName (unsigned int _id, const std::string &_prefix)
 
virtual bool RegisterLight (LightPtr _light)
 
virtual bool RegisterSensor (SensorPtr _vensor)
 
virtual bool RegisterVisual (VisualPtr _visual)
 

Protected Attributes

OgreLightStorePtr lights
 
OgreMaterialMapPtr materials
 
OgreMeshFactoryPtr meshFactory
 
Ogre::Root * ogreRoot
 
Ogre::SceneManager * ogreSceneManager
 
OgreVisualPtr rootVisual
 
OgreSensorStorePtr sensors
 
OgreVisualStorePtr visuals
 
- Protected Attributes inherited from BaseScene
math::Color backgroundColor
 Scene background color. Default should be black. More...
 
std::array< math::Color, 4 > gradientBackgroundColor
 The four corners of the gradient background color. Next is the description of how to interpret each value of the array: 0: Top left corner color. 1: Bottom left corner color. 2: Top right corner color. 3: Bottom right corner color. Default should be black. More...
 
unsigned int id
 
bool initialized
 
bool isGradientBackgroundColor = false
 Whether the scene has a gradient background. More...
 
bool loaded
 
std::string name
 
common::Time simTime
 
std::chrono::steady_clock::duration time
 

Constructor & Destructor Documentation

◆ OgreScene()

OgreScene ( unsigned int  _id,
const std::string _name 
)
protected

◆ ~OgreScene()

virtual ~OgreScene ( )
virtual

Member Function Documentation

◆ AmbientLight()

virtual math::Color AmbientLight ( ) const
virtual

Get the scene ambient light color.

Returns
The scene ambient light color

Implements Scene.

◆ Clear()

virtual void Clear ( )
virtual

Remove and destroy all objects from the scene graph. This does not completely destroy scene resources, so new objects can be created and added to the scene afterwards.

Reimplemented from BaseScene.

◆ CreateArrowVisualImpl()

virtual ArrowVisualPtr CreateArrowVisualImpl ( unsigned int  _id,
const std::string _name 
)
protectedvirtual

Implements BaseScene.

◆ CreateAxisVisualImpl()

virtual AxisVisualPtr CreateAxisVisualImpl ( unsigned int  _id,
const std::string _name 
)
protectedvirtual

Implements BaseScene.

◆ CreateBoxImpl()

virtual GeometryPtr CreateBoxImpl ( unsigned int  _id,
const std::string _name 
)
protectedvirtual

Implements BaseScene.

◆ CreateCameraImpl()

virtual CameraPtr CreateCameraImpl ( unsigned int  _id,
const std::string _name 
)
protectedvirtual

Implements BaseScene.

◆ CreateConeImpl()

virtual GeometryPtr CreateConeImpl ( unsigned int  _id,
const std::string _name 
)
protectedvirtual

Implements BaseScene.

◆ CreateCylinderImpl()

virtual GeometryPtr CreateCylinderImpl ( unsigned int  _id,
const std::string _name 
)
protectedvirtual

Implements BaseScene.

◆ CreateDepthCameraImpl()

virtual DepthCameraPtr CreateDepthCameraImpl ( const unsigned int  _id,
const std::string _name 
)
protectedvirtual

Implements BaseScene.

◆ CreateDirectionalLightImpl()

virtual DirectionalLightPtr CreateDirectionalLightImpl ( unsigned int  _id,
const std::string _name 
)
protectedvirtual

Implements BaseScene.

◆ CreateGizmoVisualImpl()

virtual GizmoVisualPtr CreateGizmoVisualImpl ( unsigned int  ,
const std::string  
)
protectedvirtual

Implementation for creating a GizmoVisual.

Parameters
[in]_idUnique id
[in]_nameName of GizmoVisual

Reimplemented from BaseScene.

◆ CreateGpuRaysImpl()

virtual GpuRaysPtr CreateGpuRaysImpl ( const unsigned int  ,
const std::string  
)
protectedvirtual

Implementation for creating GpuRays sensor.

Parameters
[in]_idUnique id
[in]_nameName of GpuRays sensor

Reimplemented from BaseScene.

◆ CreateGridImpl()

virtual GridPtr CreateGridImpl ( unsigned int  _id,
const std::string _name 
)
protectedvirtual

Implementation for creating a grid geometry object.

Parameters
[in]_idunique object id.
[in]_nameunique object name.
Returns
Pointer to a grid geometry object

Implements BaseScene.

◆ CreateLidarVisualImpl()

virtual LidarVisualPtr CreateLidarVisualImpl ( unsigned int  _id,
const std::string _name 
)
protectedvirtual

Implementation for creating a lidar visual.

Parameters
[in]_idunique object id.
[in]_nameunique object name.
Returns
Pointer to a lidar visual

Implements BaseScene.

◆ CreateMarkerImpl()

virtual MarkerPtr CreateMarkerImpl ( unsigned int  _id,
const std::string _name 
)
protectedvirtual

Implementation for creating a marker geometry object.

Parameters
[in]_idunique object id.
[in]_nameunique object name.
Returns
Pointer to a marker geometry object

Implements BaseScene.

◆ CreateMaterialImpl()

virtual MaterialPtr CreateMaterialImpl ( unsigned int  _id,
const std::string _name 
)
protectedvirtual

Implements BaseScene.

◆ CreateMeshImpl() [1/2]

virtual MeshPtr CreateMeshImpl ( unsigned int  _id,
const std::string _name,
const std::string _meshName 
)
protectedvirtual

◆ CreateMeshImpl() [2/2]

virtual MeshPtr CreateMeshImpl ( unsigned int  _id,
const std::string _name,
const MeshDescriptor _desc 
)
protectedvirtual

Implements BaseScene.

◆ CreateParticleEmitterImpl()

virtual ParticleEmitterPtr CreateParticleEmitterImpl ( unsigned int  ,
const std::string  
)
protectedvirtual

Implementation for creating a ParticleEmitter.

Parameters
[in]_idUnique id.
[in]_nameName of ParticleEmitter.
Returns
Pointer to the created particle emitter.

Reimplemented from BaseScene.

◆ CreatePlaneImpl()

virtual GeometryPtr CreatePlaneImpl ( unsigned int  _id,
const std::string _name 
)
protectedvirtual

Implements BaseScene.

◆ CreatePointLightImpl()

virtual PointLightPtr CreatePointLightImpl ( unsigned int  _id,
const std::string _name 
)
protectedvirtual

Implements BaseScene.

◆ CreateRayQueryImpl()

virtual RayQueryPtr CreateRayQueryImpl ( unsigned int  _id,
const std::string _name 
)
protectedvirtual

Implements BaseScene.

◆ CreateRenderTextureImpl()

virtual RenderTexturePtr CreateRenderTextureImpl ( unsigned int  _id,
const std::string _name 
)
protectedvirtual

Implements BaseScene.

◆ CreateRenderWindowImpl()

virtual RenderWindowPtr CreateRenderWindowImpl ( unsigned int  _id,
const std::string _name 
)
protectedvirtual

Render engine specific implementation for creating a render window.

Parameters
[in]_idunique object id
[in]_nameobject name
Returns
Pointer to the created render window.

Implements BaseScene.

◆ CreateSphereImpl()

virtual GeometryPtr CreateSphereImpl ( unsigned int  _id,
const std::string _name 
)
protectedvirtual

Implements BaseScene.

◆ CreateSpotLightImpl()

virtual SpotLightPtr CreateSpotLightImpl ( unsigned int  _id,
const std::string _name 
)
protectedvirtual

Implements BaseScene.

◆ CreateTextImpl()

virtual TextPtr CreateTextImpl ( unsigned int  _id,
const std::string _name 
)
protectedvirtual

Implementation for creating a text's geometry object.

Parameters
[in]_idunique object id.
[in]_nameunique object name.
Returns
Pointer to a text geometry object

Reimplemented from BaseScene.

◆ CreateThermalCameraImpl()

virtual ThermalCameraPtr CreateThermalCameraImpl ( const unsigned int  ,
const std::string  
)
protectedvirtual

Implementation for creating a thermal camera.

Parameters
[in]_idUnique id
[in]_nameName of thermal camera

Reimplemented from BaseScene.

◆ CreateVisualImpl()

virtual VisualPtr CreateVisualImpl ( unsigned int  _id,
const std::string _name 
)
protectedvirtual

Implements BaseScene.

◆ CreateWireBoxImpl()

virtual WireBoxPtr CreateWireBoxImpl ( unsigned int  _id,
const std::string _name 
)
protectedvirtual

Implementation for creating a wire box geometry.

Parameters
[in]_idunique object id.
[in]_nameunique object name.
Returns
Pointer to a wire box geometry object

Implements BaseScene.

◆ Destroy()

virtual void Destroy ( )
virtual

Completely destroy the scene an all its resources. Continued use of this scene after its destruction will result in undefined behavior.

Reimplemented from BaseScene.

◆ Engine()

virtual RenderEngine* Engine ( ) const
virtual

Get the creating render-engine of the scene.

Returns
The creating render-engine

Implements Scene.

◆ Fini()

virtual void Fini ( )
virtual

Reimplemented from BaseScene.

◆ InitImpl()

virtual bool InitImpl ( )
protectedvirtual

Implements BaseScene.

◆ InitObject()

virtual bool InitObject ( OgreObjectPtr  _object,
unsigned int  _id,
const std::string _name 
)
protectedvirtual

◆ Lights()

virtual LightStorePtr Lights ( ) const
protectedvirtual

Implements BaseScene.

◆ LoadImpl()

virtual bool LoadImpl ( )
protectedvirtual

Implements BaseScene.

◆ Materials()

virtual MaterialMapPtr Materials ( ) const
protectedvirtual

Implements BaseScene.

◆ OgreSceneManager()

virtual Ogre::SceneManager* OgreSceneManager ( ) const
virtual

◆ PreRender()

virtual void PreRender ( )
virtual

Prepare scene for rendering. The scene will flushing any scene changes by traversing scene-graph, calling PreRender on all objects.

Reimplemented from BaseScene.

◆ RemoveGradientBackgroundColor()

virtual void RemoveGradientBackgroundColor ( )
virtual

Remove the scene gradient background color.

See also
void SetGradientBackgroundColor( const std::array<math::Color, 4> &_colors)

Reimplemented from BaseScene.

◆ RootVisual()

virtual VisualPtr RootVisual ( ) const
virtual

Get root Visual node. All nodes that are desired to be rendered in a scene should be added to this Visual or one of its ancestors in the scene-graph. Nodes created by this Scene will not be added to the scene by default.

Returns
The root Visual node

Implements Scene.

◆ Sensors()

virtual SensorStorePtr Sensors ( ) const
protectedvirtual

Implements BaseScene.

◆ SetAmbientLight()

virtual void SetAmbientLight ( const math::Color _color)
virtual

Set the scene ambient light color.

Parameters
[in]_colorThe scene ambient light color

Implements BaseScene.

◆ SetBackgroundColor()

virtual void SetBackgroundColor ( const math::Color _color)
virtual

Set the scene background color.

Parameters
[in]_colorThe scene background color

Reimplemented from BaseScene.

◆ SetGradientBackgroundColor()

virtual void SetGradientBackgroundColor ( const std::array< math::Color, 4 > &  _colors)
virtual

Set a custom gradient background color on top of the regular background. Default should be black.

Important note: Keep in mind that this object will always be rendered on top of any existing scene or camera background.

Parameters
[in]_colorsThe scene gradient background color. Next is the description of how to interpret each value of the array: 0: Top left corner color. 1: Bottom left corner color. 2: Top right corner color. 3: Bottom right corner color.
See also
void RemoveGradientBackgroundColor()

Reimplemented from BaseScene.

◆ Visuals()

virtual VisualStorePtr Visuals ( ) const
protectedvirtual

Implements BaseScene.

Member Data Documentation

◆ lights

OgreLightStorePtr lights
protected

◆ materials

OgreMaterialMapPtr materials
protected

◆ meshFactory

OgreMeshFactoryPtr meshFactory
protected

◆ ogreRoot

Ogre::Root* ogreRoot
protected

◆ ogreSceneManager

Ogre::SceneManager* ogreSceneManager
protected

◆ rootVisual

OgreVisualPtr rootVisual
protected

◆ sensors

OgreSensorStorePtr sensors
protected

◆ visuals

OgreVisualStorePtr visuals
protected

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