17 #ifndef IGNITION_RENDERING_SCENE_HH_ 18 #define IGNITION_RENDERING_SCENE_HH_ 30 #include "ignition/rendering/config.hh" 34 #include "ignition/rendering/Export.hh" 40 inline namespace IGNITION_RENDERING_VERSION_NAMESPACE {
48 class IGNITION_RENDERING_VISIBLE
Scene 54 public:
virtual void Load() = 0;
57 public:
virtual void Init() = 0;
60 public:
virtual void Fini() = 0;
64 public:
virtual bool IsInitialized()
const = 0;
68 public:
virtual unsigned int Id()
const = 0;
80 public:
virtual common::Time IGN_DEPRECATED(4) SimTime()
const = 0;
84 public:
virtual std::chrono::steady_clock::duration
89 public:
virtual void IGN_DEPRECATED(4)
94 public:
virtual void SetTime(
95 const std::chrono::steady_clock::duration &_time) = 0;
102 public:
virtual VisualPtr RootVisual()
const = 0;
113 public:
virtual math::Color AmbientLight()
const = 0;
120 public:
virtual void SetAmbientLight(
double _r,
double _g,
double _b,
121 double _a = 1.0) = 0;
125 public:
virtual void SetAmbientLight(
const math::Color &_color) = 0;
129 public:
virtual math::Color BackgroundColor()
const = 0;
136 public:
virtual void SetBackgroundColor(
double _r,
double _g,
double _b,
137 double _a = 1.0) = 0;
141 public:
virtual void SetBackgroundColor(
const math::Color &_color) = 0;
145 public:
virtual bool IsGradientBackgroundColor()
const = 0;
151 GradientBackgroundColor()
const = 0;
166 public:
virtual void SetGradientBackgroundColor(
172 public:
virtual void RemoveGradientBackgroundColor() = 0;
177 public:
virtual unsigned int NodeCount()
const = 0;
182 public:
virtual bool HasNode(
ConstNodePtr _node)
const = 0;
188 public:
virtual bool HasNodeId(
unsigned int _id)
const = 0;
194 public:
virtual bool HasNodeName(
const std::string &_name)
const = 0;
200 public:
virtual NodePtr NodeById(
unsigned int _id)
const = 0;
212 public:
virtual NodePtr NodeByIndex(
unsigned int _index)
const = 0;
221 public:
virtual void DestroyNode(
NodePtr _node,
222 bool _recursive =
false) = 0;
228 public:
virtual void DestroyNodeById(
unsigned int _id) = 0;
234 public:
virtual void DestroyNodeByName(
const std::string &_name) = 0;
240 public:
virtual void DestroyNodeByIndex(
unsigned int _index) = 0;
243 public:
virtual void DestroyNodes() = 0;
248 public:
virtual unsigned int LightCount()
const = 0;
253 public:
virtual bool HasLight(
ConstLightPtr _light)
const = 0;
259 public:
virtual bool HasLightId(
unsigned int _id)
const = 0;
265 public:
virtual bool HasLightName(
const std::string &_name)
const = 0;
271 public:
virtual LightPtr LightById(
unsigned int _id)
const = 0;
277 public:
virtual LightPtr LightByName(
284 public:
virtual LightPtr LightByIndex(
unsigned int _index)
const = 0;
293 public:
virtual void DestroyLight(
LightPtr _light,
294 bool _recursive =
false) = 0;
300 public:
virtual void DestroyLightById(
unsigned int _id) = 0;
306 public:
virtual void DestroyLightByName(
const std::string &_name) = 0;
312 public:
virtual void DestroyLightByIndex(
unsigned int _index) = 0;
315 public:
virtual void DestroyLights() = 0;
320 public:
virtual unsigned int SensorCount()
const = 0;
331 public:
virtual bool HasSensorId(
unsigned int _id)
const = 0;
337 public:
virtual bool HasSensorName(
const std::string &_name)
const = 0;
343 public:
virtual SensorPtr SensorById(
unsigned int _id)
const = 0;
356 public:
virtual SensorPtr SensorByIndex(
unsigned int _index)
const = 0;
365 public:
virtual void DestroySensor(
SensorPtr _sensor,
366 bool _recursive =
false) = 0;
372 public:
virtual void DestroySensorById(
unsigned int _id) = 0;
378 public:
virtual void DestroySensorByName(
const std::string &_name) = 0;
384 public:
virtual void DestroySensorByIndex(
unsigned int _index) = 0;
387 public:
virtual void DestroySensors() = 0;
392 public:
virtual unsigned int VisualCount()
const = 0;
403 public:
virtual bool HasVisualId(
unsigned int _id)
const = 0;
409 public:
virtual bool HasVisualName(
const std::string &_name)
const = 0;
415 public:
virtual VisualPtr VisualById(
unsigned int _id)
const = 0;
428 public:
virtual VisualPtr VisualByIndex(
unsigned int _index)
const = 0;
438 public:
virtual void DestroyVisual(
VisualPtr _node,
439 bool _recursive =
false) = 0;
445 public:
virtual void DestroyVisualById(
unsigned int _id) = 0;
451 public:
virtual void DestroyVisualByName(
const std::string &_name) = 0;
457 public:
virtual void DestroyVisualByIndex(
unsigned int _index) = 0;
460 public:
virtual void DestroyVisuals() = 0;
465 public:
virtual bool MaterialRegistered(
479 public:
virtual void RegisterMaterial(
const std::string &_name,
485 public:
virtual void UnregisterMaterial(
const std::string &_name) = 0;
488 public:
virtual void UnregisterMaterials() = 0;
492 public:
virtual void DestroyMaterial(
MaterialPtr _material) = 0;
495 public:
virtual void DestroyMaterials() = 0;
508 unsigned int _id) = 0;
537 unsigned int _id) = 0;
566 unsigned int _id) = 0;
587 public:
virtual CameraPtr CreateCamera() = 0;
595 unsigned int _id) = 0;
624 unsigned int _id) = 0;
653 unsigned int _id) = 0;
674 public:
virtual GpuRaysPtr CreateGpuRays() = 0;
681 public:
virtual GpuRaysPtr CreateGpuRays(
unsigned int _id) = 0;
702 public:
virtual VisualPtr CreateVisual() = 0;
710 unsigned int _id) = 0;
739 unsigned int _id) = 0;
768 unsigned int _id) = 0;
797 unsigned int _id) = 0;
859 public:
virtual GridPtr CreateGrid() = 0;
863 public:
virtual WireBoxPtr CreateWireBox() = 0;
867 public:
virtual MarkerPtr CreateMarker() = 0;
879 public:
virtual LidarVisualPtr CreateLidarVisual(
unsigned int _id) = 0;
899 public:
virtual TextPtr CreateText() = 0;
939 unsigned int _id) = 0;
959 public:
virtual void PreRender() = 0;
964 public:
virtual void Clear() = 0;
969 public:
virtual void Destroy() = 0;
Describes how a Mesh should be loaded.
Definition: MeshDescriptor.hh:44
Manages a single scene-graph. This class updates scene-wide properties and holds the root scene node...
Definition: Scene.hh:48
An abstract interface to a concrete render-engine. A RenderEngine is responsible for initializing a r...
Definition: RenderEngine.hh:36
virtual ~Scene()
Deconstructor.
Definition: Scene.hh:51
Represents a surface material of a Geometry.
Definition: Material.hh:47