17 #ifndef IGNITION_RENDERING_BASE_BASESCENE_HH_ 18 #define IGNITION_RENDERING_BASE_BASESCENE_HH_ 36 public:
virtual void Load();
38 public:
virtual void Init();
40 public:
virtual void Fini();
42 public:
virtual bool IsLoaded()
const;
44 public:
virtual bool IsInitialized()
const;
46 public:
virtual unsigned int Id()
const;
50 public:
virtual common::Time SimTime()
const;
52 public:
virtual void SetSimTime(
const common::Time &_time);
54 public:
virtual void SetAmbientLight(
double _r,
double _g,
double _b,
57 public:
virtual void SetAmbientLight(
const math::Color &_color) = 0;
59 public:
virtual math::Color BackgroundColor()
const;
61 public:
virtual void SetBackgroundColor(
double _r,
double _g,
double _b,
64 public:
virtual void SetBackgroundColor(
const math::Color &_color);
66 public:
virtual unsigned int NodeCount()
const;
70 public:
virtual bool HasNodeId(
unsigned int _id)
const;
72 public:
virtual bool HasNodeName(
const std::string &_name)
const;
74 public:
virtual NodePtr NodeById(
unsigned int _id)
const;
78 public:
virtual NodePtr NodeByIndex(
unsigned int _index)
const;
80 public:
virtual void DestroyNode(
NodePtr _node);
82 public:
virtual void DestroyNodeById(
unsigned int _id);
84 public:
virtual void DestroyNodeByName(
const std::string &_name);
86 public:
virtual void DestroyNodeByIndex(
unsigned int _index);
88 public:
virtual void DestroyNodes();
90 public:
virtual unsigned int LightCount()
const;
94 public:
virtual bool HasLightId(
unsigned int _id)
const;
96 public:
virtual bool HasLightName(
const std::string &_name)
const;
98 public:
virtual LightPtr LightById(
unsigned int _id)
const;
102 public:
virtual LightPtr LightByIndex(
unsigned int _index)
const;
104 public:
virtual void DestroyLight(
LightPtr _light);
106 public:
virtual void DestroyLightById(
unsigned int _id);
108 public:
virtual void DestroyLightByName(
const std::string &_name);
110 public:
virtual void DestroyLightByIndex(
unsigned int _index);
112 public:
virtual void DestroyLights();
114 public:
virtual unsigned int SensorCount()
const;
118 public:
virtual bool HasSensorId(
unsigned int _id)
const;
120 public:
virtual bool HasSensorName(
const std::string &_name)
const;
122 public:
virtual SensorPtr SensorById(
unsigned int _id)
const;
126 public:
virtual SensorPtr SensorByIndex(
unsigned int _index)
const;
128 public:
virtual void DestroySensor(
SensorPtr _sensor);
130 public:
virtual void DestroySensorById(
unsigned int _id);
132 public:
virtual void DestroySensorByName(
const std::string &_name);
134 public:
virtual void DestroySensorByIndex(
unsigned int _index);
136 public:
virtual void DestroySensors();
138 public:
virtual unsigned int VisualCount()
const;
142 public:
virtual bool HasVisualId(
unsigned int _id)
const;
144 public:
virtual bool HasVisualName(
const std::string &_name)
const;
146 public:
virtual VisualPtr VisualById(
unsigned int _id)
const;
150 public:
virtual VisualPtr VisualByIndex(
unsigned int _index)
const;
152 public:
virtual void DestroyVisual(
VisualPtr _visual);
154 public:
virtual void DestroyVisualById(
unsigned int _id);
156 public:
virtual void DestroyVisualByName(
const std::string &_name);
158 public:
virtual void DestroyVisualByIndex(
unsigned int _index);
160 public:
virtual void DestroyVisuals();
162 public:
virtual bool MaterialRegistered(
const std::string &_name)
const;
166 public:
virtual void RegisterMaterial(
const std::string &_name,
169 public:
virtual void UnregisterMaterial(
const std::string &_name);
171 public:
virtual void UnregisterMaterials();
186 public:
virtual PointLightPtr CreatePointLight(
unsigned int _id);
190 public:
virtual PointLightPtr CreatePointLight(
unsigned int _id,
195 public:
virtual SpotLightPtr CreateSpotLight(
unsigned int _id);
199 public:
virtual SpotLightPtr CreateSpotLight(
unsigned int _id,
202 public:
virtual CameraPtr CreateCamera();
204 public:
virtual CameraPtr CreateCamera(
unsigned int _id);
208 public:
virtual CameraPtr CreateCamera(
unsigned int _id,
211 public:
virtual VisualPtr CreateVisual();
213 public:
virtual VisualPtr CreateVisual(
unsigned int _id);
217 public:
virtual VisualPtr CreateVisual(
unsigned int _id,
222 public:
virtual ArrowVisualPtr CreateArrowVisual(
unsigned int _id);
227 public:
virtual ArrowVisualPtr CreateArrowVisual(
unsigned int _id,
232 public:
virtual AxisVisualPtr CreateAxisVisual(
unsigned int _id);
236 public:
virtual AxisVisualPtr CreateAxisVisual(
unsigned int _id,
251 public:
virtual MeshPtr CreateMesh(
const common::Mesh *_mesh);
256 public:
virtual GridPtr CreateGrid();
261 const common::Material &_material);
270 public:
virtual void PreRender();
272 public:
virtual void Clear();
274 public:
virtual void Destroy();
276 protected:
virtual unsigned int CreateObjectId();
278 protected:
virtual std::string CreateObjectName(
unsigned int _id,
281 protected:
virtual bool RegisterLight(
LightPtr _light);
283 protected:
virtual bool RegisterSensor(
SensorPtr _vensor);
285 protected:
virtual bool RegisterVisual(
VisualPtr _visual);
290 protected:
virtual PointLightPtr CreatePointLightImpl(
unsigned int _id,
293 protected:
virtual SpotLightPtr CreateSpotLightImpl(
unsigned int _id,
296 protected:
virtual CameraPtr CreateCameraImpl(
unsigned int _id,
299 protected:
virtual VisualPtr CreateVisualImpl(
unsigned int _id,
302 protected:
virtual ArrowVisualPtr CreateArrowVisualImpl(
unsigned int _id,
305 protected:
virtual AxisVisualPtr CreateAxisVisualImpl(
unsigned int _id,
308 protected:
virtual GeometryPtr CreateBoxImpl(
unsigned int _id,
311 protected:
virtual GeometryPtr CreateConeImpl(
unsigned int _id,
314 protected:
virtual GeometryPtr CreateCylinderImpl(
unsigned int _id,
317 protected:
virtual GeometryPtr CreatePlaneImpl(
unsigned int _id,
320 protected:
virtual GeometryPtr CreateSphereImpl(
unsigned int _id,
323 protected:
virtual MeshPtr CreateMeshImpl(
unsigned int _id,
331 protected:
virtual GridPtr CreateGridImpl(
unsigned int _id,
334 protected:
virtual MaterialPtr CreateMaterialImpl(
unsigned int _id,
359 protected:
virtual bool LoadImpl() = 0;
361 protected:
virtual bool InitImpl() = 0;
363 private:
virtual void CreateNodeStore();
365 private:
virtual void CreateMaterials();
367 protected:
unsigned int id;
380 private:
unsigned int nextObjectId;
bool loaded
Definition: BaseScene.hh:373
bool initialized
Definition: BaseScene.hh:375
math::Color backgroundColor
Scene background color. Default should be black.
Definition: BaseScene.hh:378
Describes how a Mesh should be loaded.
Definition: MeshDescriptor.hh:38
common::Time simTime
Definition: BaseScene.hh:371
Manages a single scene-graph. This class updates scene-wide properties and holds the root scene node...
Definition: Scene.hh:44
std::string name
Definition: BaseScene.hh:369
Definition: BaseScene.hh:28
unsigned int id
Definition: BaseScene.hh:367
Definition: ArrowVisual.hh:22
Represents a surface material of a Geometry.
Definition: Material.hh:34