9 #include "../core/topic.h" 10 #include "../core/watcher.h" 11 #include "../render/mesh.h" 12 #include "../scene/material.h" 13 #include "../scene/mesh.h" 15 #include <visualization_msgs/Marker.h> 16 #include <visualization_msgs/MarkerArray.h> 18 #include <unordered_map> 23 Eigen::Affine3d _pose = Eigen::Affine3d::Identity();
24 std::shared_ptr<Mesh> _mesh;
28 std::shared_ptr<Material> _material;
29 std::shared_ptr<SceneNode> _renderer;
32 std::shared_ptr<MaterialOverride> _material_override;
36 void update(
const visualization_msgs::Marker &marker);
40 const std::shared_ptr<MaterialOverride> &material_override)
41 : _material_override(material_override) {}
49 std::map<std::pair<std::string, int>, std::shared_ptr<VisualizationMarker>>
51 std::vector<std::shared_ptr<VisualizationMarker>> _marker_list;
52 std::shared_ptr<MaterialOverride> _material_override;
53 void _update_nolock(
const visualization_msgs::Marker &marker);
56 void update(
const visualization_msgs::Marker &marker);
57 void update(
const visualization_msgs::MarkerArray &marker_array);
61 const std::shared_ptr<MaterialOverride> &material_override)
62 : _material_override(material_override) {}
67 const visualization_msgs::MarkerArray &marker_array) {
74 std::shared_ptr<MaterialOverride> _material_override =
75 std::make_shared<MaterialOverride>();
76 std::shared_ptr<VisualizationMarkerArray> _marker_array =
78 void update(
const visualization_msgs::Marker &marker) {
79 _marker_array->update(marker);
81 void update(
const visualization_msgs::MarkerArray &marker_array) {
82 _marker_array->update(marker_array);
87 PROPERTY(std::shared_ptr<MaterialOverride>, materialOverride,
102 "visualization_marker");
111 "visualization_marker_array");