17 #ifndef PLANNING__TRAJECTORY_DISPLAY_HPP_
18 #define PLANNING__TRAJECTORY_DISPLAY_HPP_
20 #include <rviz_common/display.hpp>
21 #include <rviz_common/properties/color_property.hpp>
22 #include <rviz_common/properties/float_property.hpp>
23 #include <rviz_default_plugins/displays/marker/marker_common.hpp>
24 #include <rviz_default_plugins/displays/marker_array/marker_array_display.hpp>
25 #include <autoware_auto_msgs/msg/trajectory.hpp>
26 #include <visibility_control.hpp>
34 namespace rviz_plugins
38 :
public rviz_common::RosTopicDisplay<autoware_auto_msgs::msg::Trajectory>
44 void onInitialize()
override;
45 void load(
const rviz_common::Config & config)
override;
47 void reset()
override;
50 void updateProperty();
53 using MarkerCommon = rviz_default_plugins::displays::MarkerCommon;
54 using Marker = visualization_msgs::msg::Marker;
59 void processMessage(Trajectory::ConstSharedPtr msg)
override;
61 Marker::SharedPtr create_pose_marker(
const TrajectoryPoint & point)
const;
62 Marker::SharedPtr create_velocity_marker(
const TrajectoryPoint & point)
const;
64 std::unique_ptr<MarkerCommon> m_marker_common;
65 Trajectory::ConstSharedPtr msg_cache{};
66 rviz_common::properties::ColorProperty * color_property_;
67 rviz_common::properties::FloatProperty * alpha_property_;
68 rviz_common::properties::FloatProperty * scale_property_;
69 rviz_common::properties::FloatProperty * text_alpha_property_;
70 rviz_common::properties::FloatProperty * text_scale_property_;
75 #endif // PLANNING__TRAJECTORY_DISPLAY_HPP_