Skip to content

Commit c92e806

Browse files
author
AndyZe
authored
Add optional parent frame to iMarker (#159)
* Add optional parent frame to iMarker * Use getIdentityPose() * Clang format * Clang tidy
1 parent 384cab0 commit c92e806

File tree

4 files changed

+18
-15
lines changed

4 files changed

+18
-15
lines changed

include/rviz_visual_tools/imarker_simple.h

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -73,7 +73,8 @@ class IMarkerSimple
7373
{
7474
public:
7575
explicit IMarkerSimple(const std::string& name = "imarker", double scale = 0.2,
76-
const geometry_msgs::Pose& initial_pose = getIdentityPose());
76+
const geometry_msgs::Pose& initial_pose = getIdentityPose(),
77+
const std::string& parent_frame = "world");
7778

7879
geometry_msgs::Pose& getPose();
7980

@@ -91,7 +92,8 @@ class IMarkerSimple
9192
private:
9293
void sendUpdatedIMarkerPose();
9394

94-
void make6DofMarker(const geometry_msgs::Pose& pose, double scale = 0.2);
95+
void make6DofMarker(const geometry_msgs::Pose& pose = getIdentityPose(), double scale = 0.2,
96+
const std::string& parent_frame = "world");
9597

9698
// --------------------------------------------------------
9799

src/imarker_simple.cpp

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -42,7 +42,8 @@
4242

4343
namespace rviz_visual_tools
4444
{
45-
IMarkerSimple::IMarkerSimple(const std::string& name, double scale, const geometry_msgs::Pose& initial_pose)
45+
IMarkerSimple::IMarkerSimple(const std::string& name, double scale, const geometry_msgs::Pose& initial_pose,
46+
const std::string& parent_frame)
4647
: nh_("~"), latest_pose_(initial_pose)
4748
{
4849
// Create Marker Server
@@ -52,7 +53,7 @@ IMarkerSimple::IMarkerSimple(const std::string& name, double scale, const geomet
5253
// ros::Duration(2.0).sleep();
5354

5455
// Create imarker
55-
make6DofMarker(latest_pose_, scale);
56+
make6DofMarker(latest_pose_, scale, parent_frame);
5657

5758
// Send imarker to Rviz
5859
imarker_server_->applyChanges();
@@ -97,11 +98,11 @@ void IMarkerSimple::sendUpdatedIMarkerPose()
9798
imarker_server_->applyChanges();
9899
}
99100

100-
void IMarkerSimple::make6DofMarker(const geometry_msgs::Pose& pose, double scale)
101+
void IMarkerSimple::make6DofMarker(const geometry_msgs::Pose& pose, double scale, const std::string& parent_frame)
101102
{
102103
ROS_INFO_STREAM_NAMED(name_, "Making 6dof interactive marker named " << name_);
103104

104-
int_marker_.header.frame_id = "world";
105+
int_marker_.header.frame_id = parent_frame;
105106
int_marker_.pose = pose;
106107
int_marker_.scale = scale;
107108

src/key_tool.h

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -47,15 +47,15 @@ class KeyTool : public rviz::Tool
4747
Q_OBJECT
4848
public:
4949
KeyTool();
50-
virtual ~KeyTool();
50+
~KeyTool() override;
5151

52-
virtual void onInitialize();
52+
void onInitialize() override;
5353

54-
virtual void activate();
55-
virtual void deactivate();
54+
void activate() override;
55+
void deactivate() override;
5656

57-
virtual int processKeyEvent(QKeyEvent* event, rviz::RenderPanel* panel);
58-
virtual int processMouseEvent(rviz::ViewportMouseEvent& event);
57+
int processKeyEvent(QKeyEvent* event, rviz::RenderPanel* panel) override;
58+
int processMouseEvent(rviz::ViewportMouseEvent& event) override;
5959

6060
public Q_SLOTS:
6161

src/rviz_visual_tools_gui.h

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -61,10 +61,10 @@ class RvizVisualToolsGui : public rviz::Panel
6161
{
6262
Q_OBJECT
6363
public:
64-
explicit RvizVisualToolsGui(QWidget* parent = 0);
64+
explicit RvizVisualToolsGui(QWidget* parent = nullptr);
6565

66-
virtual void load(const rviz::Config& config);
67-
virtual void save(rviz::Config config) const;
66+
void load(const rviz::Config& config) override;
67+
void save(rviz::Config config) const override;
6868

6969
public Q_SLOTS:
7070

0 commit comments

Comments
 (0)