#include <BaseScene.hh>
Public Member Functions | |
virtual | ~BaseScene () |
virtual math::Color | BackgroundColor () const override |
Get the scene background color. More... | |
virtual void | Clear () override |
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 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 | Destroy () override |
Completely destroy the scene an all its resources. Continued use of this scene after its destruction will result in undefined behavior. 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 void | Fini () override |
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 | PreRender () override |
Prepare scene for rendering. The scene will flushing any scene changes by traversing scene-graph, calling PreRender on all objects. 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 void | RemoveGradientBackgroundColor () override |
Remove the scene gradient background color. 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 | SetAmbientLight (const math::Color &_color) override=0 |
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 | SetBackgroundColor (const math::Color &_color) override |
Set the scene background color. More... | |
virtual void | SetGradientBackgroundColor (const std::array< math::Color, 4 > &_colors) override |
Set a custom gradient background color on top of the regular background. Default should be black. 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 > | |
T | enable_shared_from_this (T... args) |
T | ~enable_shared_from_this (T... args) |
T | operator= (T... args) |
T | shared_from_this (T... args) |
Public Member Functions inherited from Scene | |
virtual | ~Scene () |
Deconstructor. More... | |
virtual math::Color | AmbientLight () const =0 |
Get the scene ambient light color. More... | |
virtual RenderEngine * | Engine () const =0 |
Get the creating render-engine of the scene. More... | |
virtual VisualPtr | RootVisual () const =0 |
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... | |
Protected Member Functions | |
BaseScene (unsigned int _id, const std::string &_name) | |
virtual ArrowVisualPtr | CreateArrowVisualImpl (unsigned int _id, const std::string &_name)=0 |
virtual AxisVisualPtr | CreateAxisVisualImpl (unsigned int _id, const std::string &_name)=0 |
virtual GeometryPtr | CreateBoxImpl (unsigned int _id, const std::string &_name)=0 |
virtual CameraPtr | CreateCameraImpl (unsigned int _id, const std::string &_name)=0 |
virtual GeometryPtr | CreateConeImpl (unsigned int _id, const std::string &_name)=0 |
virtual GeometryPtr | CreateCylinderImpl (unsigned int _id, const std::string &_name)=0 |
virtual DepthCameraPtr | CreateDepthCameraImpl (unsigned int _id, const std::string &_name)=0 |
virtual DirectionalLightPtr | CreateDirectionalLightImpl (unsigned int _id, const std::string &_name)=0 |
virtual GizmoVisualPtr | CreateGizmoVisualImpl (unsigned int, const std::string &) |
Implementation for creating a GizmoVisual. More... | |
virtual GpuRaysPtr | CreateGpuRaysImpl (unsigned int, const std::string &) |
Implementation for creating GpuRays sensor. More... | |
virtual GridPtr | CreateGridImpl (unsigned int _id, const std::string &_name)=0 |
Implementation for creating a grid geometry object. More... | |
virtual LidarVisualPtr | CreateLidarVisualImpl (unsigned int _id, const std::string &_name)=0 |
Implementation for creating a lidar visual. More... | |
virtual MarkerPtr | CreateMarkerImpl (unsigned int _id, const std::string &_name)=0 |
Implementation for creating a marker geometry object. More... | |
virtual MaterialPtr | CreateMaterialImpl (unsigned int _id, const std::string &_name)=0 |
virtual MeshPtr | CreateMeshImpl (unsigned int _id, const std::string &_name, const MeshDescriptor &_desc)=0 |
virtual unsigned int | CreateObjectId () |
virtual std::string | CreateObjectName (unsigned int _id, const std::string &_prefix) |
virtual ParticleEmitterPtr | CreateParticleEmitterImpl (unsigned int, const std::string &) |
Implementation for creating a ParticleEmitter. More... | |
virtual GeometryPtr | CreatePlaneImpl (unsigned int _id, const std::string &_name)=0 |
virtual PointLightPtr | CreatePointLightImpl (unsigned int _id, const std::string &_name)=0 |
virtual RayQueryPtr | CreateRayQueryImpl (unsigned int _id, const std::string &_name)=0 |
virtual RenderTexturePtr | CreateRenderTextureImpl (unsigned int _id, const std::string &_name)=0 |
virtual RenderWindowPtr | CreateRenderWindowImpl (unsigned int _id, const std::string &_name)=0 |
Render engine specific implementation for creating a render window. More... | |
virtual GeometryPtr | CreateSphereImpl (unsigned int _id, const std::string &_name)=0 |
virtual SpotLightPtr | CreateSpotLightImpl (unsigned int _id, const std::string &_name)=0 |
virtual TextPtr | CreateTextImpl (unsigned int _id, const std::string &_name) |
Implementation for creating a text's geometry object. More... | |
virtual ThermalCameraPtr | CreateThermalCameraImpl (unsigned int, const std::string &) |
Implementation for creating a thermal camera. More... | |
virtual VisualPtr | CreateVisualImpl (unsigned int _id, const std::string &_name)=0 |
virtual WireBoxPtr | CreateWireBoxImpl (unsigned int _id, const std::string &_name)=0 |
Implementation for creating a wire box geometry. More... | |
virtual bool | InitImpl ()=0 |
virtual LightStorePtr | Lights () const =0 |
virtual bool | LoadImpl ()=0 |
virtual MaterialMapPtr | Materials () const =0 |
virtual bool | RegisterLight (LightPtr _light) |
virtual bool | RegisterSensor (SensorPtr _vensor) |
virtual bool | RegisterVisual (VisualPtr _visual) |
virtual SensorStorePtr | Sensors () const =0 |
virtual VisualStorePtr | Visuals () const =0 |
Protected Attributes | |
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
◆ BaseScene()
|
protected |
◆ ~BaseScene()
|
virtual |
Member Function Documentation
◆ BackgroundColor()
|
overridevirtual |
◆ Clear()
|
overridevirtual |
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.
Implements Scene.
Reimplemented in Ogre2Scene, and OgreScene.
◆ CreateArrowVisual() [1/4]
|
overridevirtual |
Create new arrow visual. A unique ID and name will automatically be assigned to the visual.
- Returns
- The created arrow visual
Implements Scene.
◆ CreateArrowVisual() [2/4]
|
overridevirtual |
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.
- Parameters
-
[in] _id ID of the new arrow visual
- Returns
- The created arrow visual
Implements Scene.
◆ CreateArrowVisual() [3/4]
|
overridevirtual |
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.
- Parameters
-
[in] _name Name of the new arrow visual
- Returns
- The created arrow visual
Implements Scene.
◆ CreateArrowVisual() [4/4]
|
overridevirtual |
Create new arrow visual with the given name. If either the given ID or name is already in use, NULL will be returned.
- Parameters
-
[in] _id ID of the new arrow visual [in] _name Name of the new arrow visual
- Returns
- The created arrow visual
Implements Scene.
◆ CreateArrowVisualImpl()
|
protectedpure virtual |
Implemented in Ogre2Scene, and OgreScene.
Referenced by BaseScene::CreateGpuRaysImpl().
◆ CreateAxisVisual() [1/4]
|
overridevirtual |
Create new axis visual. A unique ID and name will automatically be assigned to the visual.
- Returns
- The created axis visual
Implements Scene.
◆ CreateAxisVisual() [2/4]
|
overridevirtual |
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.
- Parameters
-
[in] _id ID of the new axis visual
- Returns
- The created axis visual
Implements Scene.
◆ CreateAxisVisual() [3/4]
|
overridevirtual |
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.
- Parameters
-
[in] _name Name of the new axis visual
- Returns
- The created axis visual
Implements Scene.
◆ CreateAxisVisual() [4/4]
|
overridevirtual |
Create new axis visual with the given name. If either the given ID or name is already in use, NULL will be returned.
- Parameters
-
[in] _id ID of the new axis visual [in] _name Name of the new axis visual
- Returns
- The created axis visual
Implements Scene.
◆ CreateAxisVisualImpl()
|
protectedpure virtual |
Implemented in Ogre2Scene, and OgreScene.
Referenced by BaseScene::CreateGpuRaysImpl().
◆ CreateBox()
|
overridevirtual |
◆ CreateBoxImpl()
|
protectedpure virtual |
Implemented in Ogre2Scene, and OgreScene.
Referenced by BaseScene::CreateGizmoVisualImpl().
◆ CreateCamera() [1/4]
|
overridevirtual |
Create new camera. A unique ID and name will automatically be assigned to the camera.
- Returns
- The created camera
Implements Scene.
◆ CreateCamera() [2/4]
|
overridevirtual |
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.
- Parameters
-
[in] _id ID of the new camera
- Returns
- The created camera
Implements Scene.
◆ CreateCamera() [3/4]
|
overridevirtual |
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.
- Parameters
-
[in] _name Name of the new camera
- Returns
- The created camera
Implements Scene.
◆ CreateCamera() [4/4]
|
overridevirtual |
Create new camera with the given name. If either the given ID or name is already in use, NULL will be returned.
- Parameters
-
[in] _id ID of the new camera [in] _name Name of the new camera
- Returns
- The created camera
Implements Scene.
◆ CreateCameraImpl()
|
protectedpure virtual |
Implemented in Ogre2Scene, and OgreScene.
◆ CreateCone()
|
overridevirtual |
◆ CreateConeImpl()
|
protectedpure virtual |
Implemented in Ogre2Scene, and OgreScene.
Referenced by BaseScene::CreateGizmoVisualImpl().
◆ CreateCylinder()
|
overridevirtual |
◆ CreateCylinderImpl()
|
protectedpure virtual |
Implemented in Ogre2Scene, and OgreScene.
Referenced by BaseScene::CreateGizmoVisualImpl().
◆ CreateDepthCamera() [1/4]
|
overridevirtual |
Create new depth camera. A unique ID and name will automatically be assigned to the camera.
- Returns
- The created camera
Implements Scene.
◆ CreateDepthCamera() [2/4]
|
overridevirtual |
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.
- Parameters
-
[in] _id ID of the new camera
- Returns
- The created camera
Implements Scene.
◆ CreateDepthCamera() [3/4]
|
overridevirtual |
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.
- Parameters
-
[in] _name Name of the new camera
- Returns
- The created camera
Implements Scene.
◆ CreateDepthCamera() [4/4]
|
overridevirtual |
Create new depth camera with the given name. If either the given ID or name is already in use, NULL will be returned.
- Parameters
-
[in] _id ID of the new camera [in] _name Name of the new camera
- Returns
- The created camera
Implements Scene.
◆ CreateDepthCameraImpl()
|
protectedpure virtual |
Implemented in Ogre2Scene, and OgreScene.
◆ CreateDirectionalLight() [1/4]
|
overridevirtual |
Create new directional light. A unique ID and name will automatically be assigned to the light.
- Returns
- The created light
Implements Scene.
◆ CreateDirectionalLight() [2/4]
|
overridevirtual |
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.
- Parameters
-
[in] _id ID of the new light
- Returns
- The created light
Implements Scene.
◆ CreateDirectionalLight() [3/4]
|
overridevirtual |
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.
- Parameters
-
[in] _name Name of the new light
- Returns
- The created light
Implements Scene.
◆ CreateDirectionalLight() [4/4]
|
overridevirtual |
Create new directional light with the given name. If either the given ID or name is already in use, NULL will be returned.
- Parameters
-
[in] _id ID of the new light [in] _name Name of the new light
- Returns
- The created light
Implements Scene.
◆ CreateDirectionalLightImpl()
|
protectedpure virtual |
Implemented in Ogre2Scene, and OgreScene.
◆ CreateGizmoVisual() [1/4]
|
overridevirtual |
Create new gizmo visual. A unique ID and name will automatically be assigned to the visual.
- Returns
- The created gizmo visual
Implements Scene.
◆ CreateGizmoVisual() [2/4]
|
overridevirtual |
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.
- Parameters
-
[in] _id ID of the new gizmo visual
- Returns
- The created gizmo visual
Implements Scene.
◆ CreateGizmoVisual() [3/4]
|
overridevirtual |
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.
- Parameters
-
[in] _name Name of the new gizmo visual
- Returns
- The created gizmo visual
Implements Scene.
◆ CreateGizmoVisual() [4/4]
|
overridevirtual |
Create new gizmo visual with the given name. If either the given ID or name is already in use, NULL will be returned.
- Parameters
-
[in] _id ID of the new gizmo visual [in] _name Name of the new gizmo visual
- Returns
- The created gizmo visual
Implements Scene.
◆ CreateGizmoVisualImpl()
|
inlineprotectedvirtual |
Implementation for creating a GizmoVisual.
- Parameters
-
[in] _id Unique id [in] _name Name of GizmoVisual
Reimplemented in Ogre2Scene, and OgreScene.
References BaseScene::CreateBoxImpl(), BaseScene::CreateConeImpl(), BaseScene::CreateCylinderImpl(), BaseScene::CreateGridImpl(), BaseScene::CreateLidarVisualImpl(), BaseScene::CreateMarkerImpl(), BaseScene::CreateMaterialImpl(), BaseScene::CreateMeshImpl(), BaseScene::CreatePlaneImpl(), BaseScene::CreateRayQueryImpl(), BaseScene::CreateRenderTextureImpl(), BaseScene::CreateRenderWindowImpl(), BaseScene::CreateSphereImpl(), BaseScene::CreateTextImpl(), BaseScene::CreateWireBoxImpl(), std::endl(), Scene::Engine(), ignerr, and RenderEngine::Name().
◆ CreateGpuRays() [1/4]
|
overridevirtual |
Create new gpu rays caster. A unique ID and name will automatically be assigned to the gpu rays caster.
- Returns
- The created gpu rays caster
Implements Scene.
◆ CreateGpuRays() [2/4]
|
overridevirtual |
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.
- Parameters
-
[in] _id ID of the new gpu rays caster
- Returns
- The created gpu rays caster
Implements Scene.
◆ CreateGpuRays() [3/4]
|
overridevirtual |
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.
- Parameters
-
[in] _name Name of the new gpu rays caster
- Returns
- The created gpu ray caster
Implements Scene.
◆ CreateGpuRays() [4/4]
|
overridevirtual |
Create new gpu rays caster with the given name. If either the given ID or name is already in use, NULL will be returned.
- Parameters
-
[in] _id ID of the gpu ray caster [in] _name Name of the new gpu ray caster
- Returns
- The created Gpu ray caster
Implements Scene.
◆ CreateGpuRaysImpl()
|
inlineprotectedvirtual |
Implementation for creating GpuRays sensor.
- Parameters
-
[in] _id Unique id [in] _name Name of GpuRays sensor
Reimplemented in Ogre2Scene, and OgreScene.
References BaseScene::CreateArrowVisualImpl(), BaseScene::CreateAxisVisualImpl(), BaseScene::CreateVisualImpl(), std::endl(), Scene::Engine(), ignerr, and RenderEngine::Name().
◆ CreateGrid()
|
overridevirtual |
◆ CreateGridImpl()
|
protectedpure virtual |
Implementation for creating a grid geometry object.
- Parameters
-
[in] _id unique object id. [in] _name unique object name.
- Returns
- Pointer to a grid geometry object
Implemented in Ogre2Scene, and OgreScene.
Referenced by BaseScene::CreateGizmoVisualImpl().
◆ CreateLidarVisual() [1/4]
|
overridevirtual |
Create new lidar visual. A unique ID and name will automatically be assigned to the lidar visual.
- Returns
- The created lidar visual
Implements Scene.
◆ CreateLidarVisual() [2/4]
|
overridevirtual |
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.
- Parameters
-
[in] _id ID of the new lidar visual
- Returns
- The created lidar visual
Implements Scene.
◆ CreateLidarVisual() [3/4]
|
overridevirtual |
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.
- Parameters
-
[in] _name Name of the new lidar visual
- Returns
- The created lidar visual
Implements Scene.
◆ CreateLidarVisual() [4/4]
|
overridevirtual |
Create new lidar visual with the given name. If either the given ID or name is already in use, NULL will be returned.
- Parameters
-
[in] _id ID of the lidar visual. [in] _name Name of the new lidar visual.
- Returns
- The created lidar visual
Implements Scene.
◆ CreateLidarVisualImpl()
|
protectedpure virtual |
Implementation for creating a lidar visual.
- Parameters
-
[in] _id unique object id. [in] _name unique object name.
- Returns
- Pointer to a lidar visual
Implemented in Ogre2Scene, and OgreScene.
Referenced by BaseScene::CreateGizmoVisualImpl().
◆ CreateMarker()
|
overridevirtual |
◆ CreateMarkerImpl()
|
protectedpure virtual |
Implementation for creating a marker geometry object.
- Parameters
-
[in] _id unique object id. [in] _name unique object name.
- Returns
- Pointer to a marker geometry object
Implemented in Ogre2Scene, and OgreScene.
Referenced by BaseScene::CreateGizmoVisualImpl().
◆ CreateMaterial() [1/2]
|
overridevirtual |
Create new material with the given name. Created material will have default properties.
- Parameters
-
[in] _name Name for the new material.
- Returns
- The created material
Implements Scene.
◆ CreateMaterial() [2/2]
|
overridevirtual |
Create new material from the reference common::Material.
- Parameters
-
[in] _material Reference material
- Returns
- The created material
Implements Scene.
◆ CreateMaterialImpl()
|
protectedpure virtual |
Implemented in Ogre2Scene, and OgreScene.
Referenced by BaseScene::CreateGizmoVisualImpl().
◆ CreateMesh() [1/3]
|
overridevirtual |
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.
- Parameters
-
[in] _meshName Name of the reference mesh
- Returns
- The created mesh
Implements Scene.
◆ CreateMesh() [2/3]
|
overridevirtual |
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.
- Parameters
-
[in] _mesh Reference mesh
- Returns
- The created mesh
Implements Scene.
◆ CreateMesh() [3/3]
|
overridevirtual |
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.
- Parameters
-
[in] _desc Descriptor of the mesh to load
- Returns
- The created mesh
Implements Scene.
◆ CreateMeshImpl()
|
protectedpure virtual |
Implemented in Ogre2Scene, and OgreScene.
Referenced by BaseScene::CreateGizmoVisualImpl().
◆ CreateObjectId()
|
protectedvirtual |
◆ CreateObjectName()
|
protectedvirtual |
◆ CreateParticleEmitter() [1/4]
|
overridevirtual |
Create new particle emitter. A unique ID and name will automatically be assigned to the visual.
- Returns
- The created particle emitter
Implements Scene.
◆ CreateParticleEmitter() [2/4]
|
overridevirtual |
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.
- Parameters
-
[in] _id ID of the new particle emitter
- Returns
- The created particle emitter
Implements Scene.
◆ CreateParticleEmitter() [3/4]
|
overridevirtual |
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.
- Parameters
-
[in] _name Name of the new particle emitter
- Returns
- The created particle emitter
Implements Scene.
◆ CreateParticleEmitter() [4/4]
|
overridevirtual |
Create new particle emitter with the given name. If either the given ID or name is already in use, NULL will be returned.
- Parameters
-
[in] _id ID of the new particle emitter [in] _name Name of the new particle emitter
- Returns
- The created particle emitter
Implements Scene.
◆ CreateParticleEmitterImpl()
|
inlineprotectedvirtual |
Implementation for creating a ParticleEmitter.
- Parameters
-
[in] _id Unique id. [in] _name Name of ParticleEmitter.
- Returns
- Pointer to the created particle emitter.
Reimplemented in Ogre2Scene, and OgreScene.
References std::endl(), Scene::Engine(), ignerr, BaseScene::InitImpl(), BaseScene::Lights(), BaseScene::LoadImpl(), BaseScene::Materials(), RenderEngine::Name(), BaseScene::Sensors(), and BaseScene::Visuals().
◆ CreatePlane()
|
overridevirtual |
◆ CreatePlaneImpl()
|
protectedpure virtual |
Implemented in Ogre2Scene, and OgreScene.
Referenced by BaseScene::CreateGizmoVisualImpl().
◆ CreatePointLight() [1/4]
|
overridevirtual |
Create new point light. A unique ID and name will automatically be assigned to the light.
- Returns
- The created light
Implements Scene.
◆ CreatePointLight() [2/4]
|
overridevirtual |
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.
- Parameters
-
[in] _id ID of the new light
- Returns
- The created light
Implements Scene.
◆ CreatePointLight() [3/4]
|
overridevirtual |
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.
- Parameters
-
[in] _name Name of the new light
- Returns
- The created light
Implements Scene.
◆ CreatePointLight() [4/4]
|
overridevirtual |
Create new point light with the given name. If either the given ID or name is already in use, NULL will be returned.
- Parameters
-
[in] _id ID of the new light [in] _name Name of the new light
- Returns
- The created light
Implements Scene.
◆ CreatePointLightImpl()
|
protectedpure virtual |
Implemented in Ogre2Scene, and OgreScene.
◆ CreateRayQuery()
|
overridevirtual |
◆ CreateRayQueryImpl()
|
protectedpure virtual |
Implemented in Ogre2Scene, and OgreScene.
Referenced by BaseScene::CreateGizmoVisualImpl().
◆ CreateRenderTexture()
|
overridevirtual |
◆ CreateRenderTextureImpl()
|
protectedpure virtual |
Implemented in Ogre2Scene, and OgreScene.
Referenced by BaseScene::CreateGizmoVisualImpl().
◆ CreateRenderWindow()
|
overridevirtual |
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.
- Returns
- The created render window
Implements Scene.
◆ CreateRenderWindowImpl()
|
protectedpure virtual |
Render engine specific implementation for creating a render window.
- Parameters
-
[in] _id unique object id [in] _name object name
- Returns
- Pointer to the created render window.
Implemented in Ogre2Scene, and OgreScene.
Referenced by BaseScene::CreateGizmoVisualImpl().
◆ CreateSphere()
|
overridevirtual |
◆ CreateSphereImpl()
|
protectedpure virtual |
Implemented in Ogre2Scene, and OgreScene.
Referenced by BaseScene::CreateGizmoVisualImpl().
◆ CreateSpotLight() [1/4]
|
overridevirtual |
Create new spotlight. A unique ID and name will automatically be assigned to the light.
- Returns
- The created light
Implements Scene.
◆ CreateSpotLight() [2/4]
|
overridevirtual |
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.
- Parameters
-
[in] _id ID of the new light
- Returns
- The created light
Implements Scene.
◆ CreateSpotLight() [3/4]
|
overridevirtual |
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.
- Parameters
-
[in] _name Name of the new light
- Returns
- The created light
Implements Scene.
◆ CreateSpotLight() [4/4]
|
overridevirtual |
Create new spotlight with the given name. If either the given ID or name is already in use, NULL will be returned.
- Parameters
-
[in] _id ID of the new light [in] _name Name of the new light
- Returns
- The created light
Implements Scene.
◆ CreateSpotLightImpl()
|
protectedpure virtual |
Implemented in Ogre2Scene, and OgreScene.
◆ CreateText()
|
overridevirtual |
◆ CreateTextImpl()
|
protectedvirtual |
Implementation for creating a text's geometry object.
- Parameters
-
[in] _id unique object id. [in] _name unique object name.
- Returns
- Pointer to a text geometry object
Reimplemented in Ogre2Scene, and OgreScene.
Referenced by BaseScene::CreateGizmoVisualImpl().
◆ CreateThermalCamera() [1/4]
|
overridevirtual |
Create new thermal camera. A unique ID and name will automatically be assigned to the camera.
- Returns
- The created camera
Implements Scene.
◆ CreateThermalCamera() [2/4]
|
overridevirtual |
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.
- Parameters
-
[in] _id ID of the new camera
- Returns
- The created camera
Implements Scene.
◆ CreateThermalCamera() [3/4]
|
overridevirtual |
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.
- Parameters
-
[in] _name Name of the new camera
- Returns
- The created camera
Implements Scene.
◆ CreateThermalCamera() [4/4]
|
overridevirtual |
Create new thermal camera with the given name. If either the given ID or name is already in use, NULL will be returned.
- Parameters
-
[in] _id ID of the new camera [in] _name Name of the new camera
- Returns
- The created camera
Implements Scene.
◆ CreateThermalCameraImpl()
|
inlineprotectedvirtual |
Implementation for creating a thermal camera.
- Parameters
-
[in] _id Unique id [in] _name Name of thermal camera
Reimplemented in Ogre2Scene, and OgreScene.
References std::endl(), Scene::Engine(), ignerr, and RenderEngine::Name().
◆ CreateVisual() [1/4]
|
overridevirtual |
Create new visual. A unique ID and name will automatically be assigned to the visual.
- Returns
- The created visual
Implements Scene.
◆ CreateVisual() [2/4]
|
overridevirtual |
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.
- Parameters
-
[in] _id ID of the new visual
- Returns
- The created visual
Implements Scene.
◆ CreateVisual() [3/4]
|
overridevirtual |
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.
- Parameters
-
[in] _name Name of the new visual
- Returns
- The created visual
Implements Scene.
◆ CreateVisual() [4/4]
|
overridevirtual |
Create new visual with the given name. If either the given ID or name is already in use, NULL will be returned.
- Parameters
-
[in] _id ID of the new visual [in] _name Name of the new visual
- Returns
- The created visual
Implements Scene.
◆ CreateVisualImpl()
|
protectedpure virtual |
Implemented in Ogre2Scene, and OgreScene.
Referenced by BaseScene::CreateGpuRaysImpl().
◆ CreateWireBox()
|
overridevirtual |
◆ CreateWireBoxImpl()
|
protectedpure virtual |
Implementation for creating a wire box geometry.
- Parameters
-
[in] _id unique object id. [in] _name unique object name.
- Returns
- Pointer to a wire box geometry object
Implemented in Ogre2Scene, and OgreScene.
Referenced by BaseScene::CreateGizmoVisualImpl().
◆ Destroy()
|
overridevirtual |
Completely destroy the scene an all its resources. Continued use of this scene after its destruction will result in undefined behavior.
Implements Scene.
Reimplemented in Ogre2Scene, and OgreScene.
◆ DestroyLight()
|
overridevirtual |
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.
- Parameters
-
[in] _id ID of the light to destroy [in] _recursive True to recursively destroy the node and its children, false to destroy only this node and detach the children
Implements Scene.
◆ DestroyLightById()
|
overridevirtual |
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.
- Parameters
-
[in] _id ID of the light to destroy
Implements Scene.
◆ DestroyLightByIndex()
|
overridevirtual |
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.
- Parameters
-
[in] _index Index of the light to destroy
Implements Scene.
◆ DestroyLightByName()
|
overridevirtual |
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.
- Parameters
-
[in] _name Name of the light to destroy
Implements Scene.
◆ DestroyLights()
|
overridevirtual |
Destroy all lights manages by this scene.
Implements Scene.
◆ DestroyMaterial()
|
overridevirtual |
◆ DestroyMaterials()
|
overridevirtual |
Unregister and destroys all registered materials.
Implements Scene.
◆ DestroyNode()
|
overridevirtual |
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.
- Parameters
-
[in] _id ID of the node to destroy [in] _recursive True to recursively destroy the node and its children, false to destroy only this node and detach the children
Implements Scene.
◆ DestroyNodeById()
|
overridevirtual |
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.
- Parameters
-
[in] _id ID of the node to destroy
Implements Scene.
◆ DestroyNodeByIndex()
|
overridevirtual |
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.
- Parameters
-
[in] _index Index of the node to destroy
Implements Scene.
◆ DestroyNodeByName()
|
overridevirtual |
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.
- Parameters
-
[in] _name Name of the node to destroy
Implements Scene.
◆ DestroyNodes()
|
overridevirtual |
Destroy all nodes manages by this scene.
Implements Scene.
◆ DestroySensor()
|
overridevirtual |
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.
- Parameters
-
[in] _id ID of the sensor to destroy [in] _recursive True to recursively destroy the node and its children, false to destroy only this node and detach the children
Implements Scene.
◆ DestroySensorById()
|
overridevirtual |
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.
- Parameters
-
[in] _id ID of the sensor to destroy
Implements Scene.
◆ DestroySensorByIndex()
|
overridevirtual |
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.
- Parameters
-
[in] _index Index of the sensor to destroy
Implements Scene.
◆ DestroySensorByName()
|
overridevirtual |
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.
- Parameters
-
[in] _name Name of the sensor to destroy
Implements Scene.
◆ DestroySensors()
|
overridevirtual |
Destroy all sensors manages by this scene.
Implements Scene.
◆ DestroyVisual()
|
overridevirtual |
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.
- Parameters
-
[in] _id ID of the node to destroy [in] _recursive True to recursively destroy the node and its children, false to destroy only this node and detach the children
Implements Scene.
◆ DestroyVisualById()
|
overridevirtual |
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.
- Parameters
-
[in] _id ID of the node to destroy
Implements Scene.
◆ DestroyVisualByIndex()
|
overridevirtual |
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.
- Parameters
-
[in] _index Index of the node to destroy
Implements Scene.
◆ DestroyVisualByName()
|
overridevirtual |
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.
- Parameters
-
[in] _name Name of the node to destroy
Implements Scene.
◆ DestroyVisuals()
|
overridevirtual |
Destroy all nodes manages by this scene.
Implements Scene.
◆ Fini()
|
overridevirtual |
Implements Scene.
Reimplemented in Ogre2Scene, and OgreScene.
◆ GradientBackgroundColor()
|
overridevirtual |
Get the scene gradient background color.
- Returns
- The scene gradient background color
- See also
- bool IsGradientBackgroundColor() const
Implements Scene.
◆ HasLight()
|
overridevirtual |
◆ HasLightId()
|
overridevirtual |
◆ HasLightName()
|
overridevirtual |
◆ HasNode()
|
overridevirtual |
◆ HasNodeId()
|
overridevirtual |
◆ HasNodeName()
|
overridevirtual |
◆ HasSensor()
|
overridevirtual |
◆ HasSensorId()
|
overridevirtual |
◆ HasSensorName()
|
overridevirtual |
◆ HasVisual()
|
overridevirtual |
◆ HasVisualId()
|
overridevirtual |
◆ HasVisualName()
|
overridevirtual |
◆ Id()
|
overridevirtual |
◆ Init()
|
overridevirtual |
Initialize the scene.
Implements Scene.
◆ InitImpl()
|
protectedpure virtual |
Implemented in Ogre2Scene, and OgreScene.
Referenced by BaseScene::CreateParticleEmitterImpl().
◆ IsGradientBackgroundColor()
|
overridevirtual |
Whether the scene has a gradient background or not (solid)
- Returns
- True if the scene has a gradient background or false otherwise
Implements Scene.
◆ IsInitialized()
|
overridevirtual |
◆ IsLoaded()
|
virtual |
◆ LightById()
|
overridevirtual |
Get light with the given id. If no light exists with the given id, NULL will be returned.
- Parameters
-
[in] _id ID of the desired light
- Returns
- The desired light
Implements Scene.
◆ LightByIndex()
|
overridevirtual |
Get light at the given index. If no light exists at the given index, NULL will be returned.
- Parameters
-
[in] _index Index of the desired light
- Returns
- The desired light
Implements Scene.
◆ LightByName()
|
overridevirtual |
Get light with the given name. If no light exists with the given name, NULL will be returned.
- Parameters
-
[in] _name Name of the desired light
- Returns
- The desired light
Implements Scene.
◆ LightCount()
|
overridevirtual |
Get the number of lights managed by this scene. Note these lights may not be directly or indirectly attached to the root light.
- Returns
- The number of lights managed by this scene
Implements Scene.
◆ Lights()
|
protectedpure virtual |
Implemented in Ogre2Scene, and OgreScene.
Referenced by BaseScene::CreateParticleEmitterImpl().
◆ Load()
|
overridevirtual |
Load scene-specific resources.
Implements Scene.
◆ LoadImpl()
|
protectedpure virtual |
Implemented in Ogre2Scene, and OgreScene.
Referenced by BaseScene::CreateParticleEmitterImpl().
◆ Material()
|
overridevirtual |
Get material registered under the given name. If no material is registered under the given name, NULL will be returned.
- Parameters
-
[in] _name Name of the desired material
- Returns
- The specified material
Implements Scene.
◆ MaterialRegistered()
|
overridevirtual |
Determine if a material is registered under the given name.
- Parameters
-
[in] _name Name of the material in question
- Returns
- True if a material is registered under the given name
Implements Scene.
◆ Materials()
|
protectedpure virtual |
Implemented in Ogre2Scene, and OgreScene.
Referenced by BaseScene::CreateParticleEmitterImpl().
◆ Name()
|
overridevirtual |
◆ NodeById()
|
overridevirtual |
Get node with the given id. If no node exists with the given id, NULL will be returned.
- Parameters
-
[in] _id ID of the desired node
- Returns
- The desired node
Implements Scene.
◆ NodeByIndex()
|
overridevirtual |
Get node at the given index. If no node exists at the given index, NULL will be returned.
- Parameters
-
[in] _index Index of the desired node
- Returns
- The desired node
Implements Scene.
◆ NodeByName()
|
overridevirtual |
Get node with the given name. If no node exists with the given name, NULL will be returned.
- Parameters
-
[in] _name Name of the desired node
- Returns
- The desired node
Implements Scene.
◆ NodeCount()
|
overridevirtual |
Get the number of nodes managed by this scene. Note these nodes may not be directly or indirectly attached to the root node.
- Returns
- The number of nodes managed by this scene
Implements Scene.
◆ PreRender()
|
overridevirtual |
Prepare scene for rendering. The scene will flushing any scene changes by traversing scene-graph, calling PreRender on all objects.
Implements Scene.
Reimplemented in Ogre2Scene, and OgreScene.
◆ RegisterLight()
|
protectedvirtual |
◆ RegisterMaterial()
|
overridevirtual |
◆ RegisterSensor()
|
protectedvirtual |
◆ RegisterVisual()
|
protectedvirtual |
◆ RemoveGradientBackgroundColor()
|
overridevirtual |
Remove the scene gradient background color.
- See also
- void SetGradientBackgroundColor( const std::array<math::Color, 4> &_colors)
Implements Scene.
Reimplemented in OgreScene.
◆ SensorById()
|
overridevirtual |
Get sensor with the given id. If no sensor exists with the given id, NULL will be returned.
- Parameters
-
[in] _id ID of the desired sensor
- Returns
- The desired sensor
Implements Scene.
◆ SensorByIndex()
|
overridevirtual |
Get sensor at the given index. If no sensor exists at the given index, NULL will be returned.
- Parameters
-
[in] _index Index of the desired sensor
- Returns
- The desired sensor
Implements Scene.
◆ SensorByName()
|
overridevirtual |
Get sensor with the given name. If no sensor exists with the given name, NULL will be returned.
- Parameters
-
[in] _name Name of the desired sensor
- Returns
- The desired sensor
Implements Scene.
◆ SensorCount()
|
overridevirtual |
Get the number of sensors managed by this scene. Note these sensors may not be directly or indirectly attached to the root sensor.
- Returns
- The number of sensors managed by this scene
Implements Scene.
◆ Sensors()
|
protectedpure virtual |
Implemented in Ogre2Scene, and OgreScene.
Referenced by BaseScene::CreateParticleEmitterImpl().
◆ SetAmbientLight() [1/2]
|
overridevirtual |
Set the scene ambient light color.
- Parameters
-
[in] _r Red color [in] _g Green color [in] _b Blue color [in] _a Alpha color
Implements Scene.
◆ SetAmbientLight() [2/2]
|
overridepure virtual |
Set the scene ambient light color.
- Parameters
-
[in] _color The scene ambient light color
Implements Scene.
Implemented in Ogre2Scene, and OgreScene.
◆ SetBackgroundColor() [1/2]
|
overridevirtual |
Set the scene background color.
- Parameters
-
[in] _r Red color [in] _g Green color [in] _b Blue color [in] _a Alpha color
Implements Scene.
◆ SetBackgroundColor() [2/2]
|
overridevirtual |
◆ SetGradientBackgroundColor()
|
overridevirtual |
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] _colors The 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()
Implements Scene.
Reimplemented in OgreScene.
◆ SetSimTime()
|
overridevirtual |
Set the last simulation update time.
- Parameters
-
[in] _time Latest simulation update time
Implements Scene.
◆ SetTime()
|
overridevirtual |
Set the last simulation update time.
- Parameters
-
[in] _time Latest simulation update time
Implements Scene.
◆ SimTime()
|
overridevirtual |
◆ Time()
|
overridevirtual |
◆ UnregisterMaterial()
|
overridevirtual |
Unregister material registered under the given name. If no material is registered under this name, no work will be done.
- Parameters
-
[in] _name Name of the material to unregistered
Implements Scene.
◆ UnregisterMaterials()
|
overridevirtual |
Unregister all registered materials.
Implements Scene.
◆ VisualAt()
|
overridevirtual |
◆ VisualById()
|
overridevirtual |
Get node with the given id. If no node exists with the given id, NULL will be returned.
- Parameters
-
[in] _id ID of the desired node
- Returns
- The desired node
Implements Scene.
◆ VisualByIndex()
|
overridevirtual |
Get node at the given index. If no node exists at the given index, NULL will be returned.
- Parameters
-
[in] _index Index of the desired node
- Returns
- The desired node
Implements Scene.
◆ VisualByName()
|
overridevirtual |
Get node with the given name. If no node exists with the given name, NULL will be returned.
- Parameters
-
[in] _name Name of the desired node
- Returns
- The desired node
Implements Scene.
◆ VisualCount()
|
overridevirtual |
Get the number of nodes managed by this scene. Note these nodes may not be directly or indirectly attached to the root node.
- Returns
- The number of nodes managed by this scene
Implements Scene.
◆ Visuals()
|
protectedpure virtual |
Implemented in Ogre2Scene, and OgreScene.
Referenced by BaseScene::CreateParticleEmitterImpl().
Member Data Documentation
◆ backgroundColor
|
protected |
Scene background color. Default should be black.
◆ gradientBackgroundColor
|
protected |
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.
◆ id
|
protected |
◆ initialized
|
protected |
◆ isGradientBackgroundColor
|
protected |
Whether the scene has a gradient background.
◆ loaded
|
protected |
◆ name
|
protected |
◆ simTime
|
protected |
◆ time
|
protected |
The documentation for this class was generated from the following file: