18 #ifndef GZ_SIM_SCENEMANAGER_HH_
19 #define GZ_SIM_SCENEMANAGER_HH_
24 #include <unordered_map>
28 #include <sdf/Geometry.hh>
29 #include <sdf/Actor.hh>
30 #include <sdf/Joint.hh>
31 #include <sdf/Light.hh>
32 #include <sdf/Link.hh>
33 #include <sdf/Material.hh>
34 #include <sdf/Model.hh>
35 #include <sdf/Visual.hh>
37 #include <gz/common/KeyFrame.hh>
38 #include <gz/common/Animation.hh>
39 #include <gz/common/graphics/Types.hh>
41 #include <gz/math/Inertial.hh>
42 #include <gz/math/Matrix4.hh>
43 #include <gz/math/Pose3.hh>
44 #include <gz/math/SphericalCoordinates.hh>
45 #include <gz/math/Vector3.hh>
47 #include <gz/msgs/particle_emitter.pb.h>
49 #include <gz/rendering/RenderTypes.hh>
51 #include <gz/sim/config.hh>
53 #include <gz/sim/rendering/Export.hh>
60 inline namespace GZ_SIM_VERSION_NAMESPACE {
62 class SceneManagerPrivate;
72 public: std::chrono::steady_clock::duration
time;
75 public:
bool loop =
false;
78 public:
bool followTrajectory =
false;
95 public:
bool valid =
false;
113 public: rendering::ScenePtr
Scene()
const;
155 const rendering::NodePtr _nodeToFilter)> _filter)
const;
227 std::chrono::steady_clock::time_point _time);
288 Entity _parentGazeboId = 0);
317 Entity _id, std::chrono::steady_clock::duration _time)
const;
327 Entity _id, std::chrono::steady_clock::duration _time)
const;
339 private: rendering::GeometryPtr LoadGeometry(
const sdf::Geometry &_geom,
345 private: rendering::MaterialPtr LoadMaterial(
354 const rendering::VisualPtr &_visual)
const;
362 const rendering::NodePtr &_node)
const;
372 bool _makeTransparent);