From 9ded71001224248bb20ec5bbb87e6e0ce073c4e2 Mon Sep 17 00:00:00 2001 From: Davide Torielli Date: Thu, 15 Sep 2022 12:54:23 +0200 Subject: [PATCH 1/8] solved eigen conversion missing library --- CMakeLists.txt | 1 + package.xml | 1 + 2 files changed, 2 insertions(+) diff --git a/CMakeLists.txt b/CMakeLists.txt index 54b4473..156e2b8 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -19,6 +19,7 @@ find_package(catkin REQUIRED COMPONENTS rviz std_msgs geometry_msgs + eigen_conversions ) find_package(Eigen3 REQUIRED) diff --git a/package.xml b/package.xml index c43fdaf..e054b84 100644 --- a/package.xml +++ b/package.xml @@ -33,6 +33,7 @@ message_runtime std_msgs geometry_msgs + eigen_conversions From d1da48faeb0d5d0716c8a85be2ad5fe595841e29 Mon Sep 17 00:00:00 2001 From: Davide Torielli Date: Tue, 3 Jan 2023 12:54:12 +0100 Subject: [PATCH 2/8] removing box, but rotations bit wrong --- src/tf_visual_tools_gui.cpp | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/src/tf_visual_tools_gui.cpp b/src/tf_visual_tools_gui.cpp index b141d10..f91da0a 100644 --- a/src/tf_visual_tools_gui.cpp +++ b/src/tf_visual_tools_gui.cpp @@ -215,14 +215,14 @@ void createTFTab::createNewIMarker(tf_data new_tf, bool has_menu) visualization_msgs::InteractiveMarker int_marker; int_marker.header.frame_id = new_tf.from_; - int_marker.scale = 0.25; + int_marker.scale = 0.20; int_marker.name = new_tf.name_.toStdString(); - visualization_msgs::InteractiveMarkerControl box_control; - box_control.always_visible = true; - box_control.markers.push_back(marker); - box_control.interaction_mode = visualization_msgs::InteractiveMarkerControl::MOVE_ROTATE_3D; - int_marker.controls.push_back(box_control); + //visualization_msgs::InteractiveMarkerControl box_control; + //box_control.always_visible = true; + //box_control.markers.push_back(marker); + //box_control.interaction_mode = visualization_msgs::InteractiveMarkerControl::MOVE_ROTATE_3D; + //int_marker.controls.push_back(box_control); // create the handles to control individual dofs visualization_msgs::InteractiveMarkerControl control; From 4cc36233181b5dad17bd1b843966d6fb33d076f7 Mon Sep 17 00:00:00 2001 From: Davide Torielli Date: Mon, 30 Jan 2023 11:08:28 +0100 Subject: [PATCH 3/8] initial setup for my application --- src/tf_visual_tools_gui.cpp | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/tf_visual_tools_gui.cpp b/src/tf_visual_tools_gui.cpp index f91da0a..94d3c5b 100644 --- a/src/tf_visual_tools_gui.cpp +++ b/src/tf_visual_tools_gui.cpp @@ -94,13 +94,15 @@ createTFTab::createTFTab(QWidget *parent) : QWidget(parent) from_->lineEdit()->setPlaceholderText("Add new or select existing"); //from_->addItem(tr("Select existing or add new TF")); connect(from_, SIGNAL(editTextChanged(const QString &)), this, SLOT(fromTextChanged(const QString &))); + from_->setCurrentText("world"); to_ = new QLineEdit; to_->setPlaceholderText("to TF"); connect(to_, SIGNAL(textChanged(const QString &)), this, SLOT(toTextChanged(const QString &))); + to_->setText(QString("laser")); add_imarker_ = new QCheckBox("i marker?", this); - add_imarker_->setCheckState(Qt::Unchecked); + add_imarker_->setCheckState(Qt::Checked); add_imarker_menu_ = new QCheckBox("menus?", this); add_imarker_menu_->setCheckState(Qt::Unchecked); From 557eb2193c88488f0964acf932b32ed96890585d Mon Sep 17 00:00:00 2001 From: Davide Torielli Date: Mon, 25 Mar 2024 16:13:26 +0100 Subject: [PATCH 4/8] marker in horizontal plane --- src/tf_visual_tools_gui.cpp | 64 +++++++++++++++++++++---------------- 1 file changed, 37 insertions(+), 27 deletions(-) diff --git a/src/tf_visual_tools_gui.cpp b/src/tf_visual_tools_gui.cpp index 94d3c5b..200bf5b 100644 --- a/src/tf_visual_tools_gui.cpp +++ b/src/tf_visual_tools_gui.cpp @@ -228,39 +228,49 @@ void createTFTab::createNewIMarker(tf_data new_tf, bool has_menu) // create the handles to control individual dofs visualization_msgs::InteractiveMarkerControl control; - control.orientation.w = 1; - control.orientation.x = 1; - control.orientation.y = 0; - control.orientation.z = 0; - control.name = "rotate_x"; - control.interaction_mode = visualization_msgs::InteractiveMarkerControl::ROTATE_AXIS; - int_marker.controls.push_back(control); - control.name = "move_x"; - control.interaction_mode = visualization_msgs::InteractiveMarkerControl::MOVE_AXIS; - int_marker.controls.push_back(control); - +// control.orientation.w = 1; +// control.orientation.x = 1; +// control.orientation.y = 0; +// control.orientation.z = 0; +// control.name = "rotate_x"; +// control.interaction_mode = visualization_msgs::InteractiveMarkerControl::ROTATE_AXIS; +// int_marker.controls.push_back(control); +// control.name = "move_x"; +// control.interaction_mode = visualization_msgs::InteractiveMarkerControl::MOVE_AXIS; +// int_marker.controls.push_back(control); + +// control.orientation.w = 1; +// control.orientation.x = 0; +// control.orientation.y = 1; +// control.orientation.z = 0; +// control.name = "rotate_y"; +// control.interaction_mode = visualization_msgs::InteractiveMarkerControl::ROTATE_AXIS; +// int_marker.controls.push_back(control); +// control.name = "move_y"; +// control.interaction_mode = visualization_msgs::InteractiveMarkerControl::MOVE_AXIS; +// int_marker.controls.push_back(control); +// +// control.orientation.w = 1; +// control.orientation.x = 0; +// control.orientation.y = 0; +// control.orientation.z = 1; +// control.name = "rotate_z"; +// control.interaction_mode = visualization_msgs::InteractiveMarkerControl::ROTATE_AXIS; +// int_marker.controls.push_back(control); +// control.name = "move_z"; +// control.interaction_mode = visualization_msgs::InteractiveMarkerControl::MOVE_AXIS; +// int_marker.controls.push_back(control); + control.orientation.w = 1; control.orientation.x = 0; control.orientation.y = 1; control.orientation.z = 0; - control.name = "rotate_y"; - control.interaction_mode = visualization_msgs::InteractiveMarkerControl::ROTATE_AXIS; - int_marker.controls.push_back(control); - control.name = "move_y"; - control.interaction_mode = visualization_msgs::InteractiveMarkerControl::MOVE_AXIS; - int_marker.controls.push_back(control); - - control.orientation.w = 1; - control.orientation.x = 0; - control.orientation.y = 0; - control.orientation.z = 1; - control.name = "rotate_z"; - control.interaction_mode = visualization_msgs::InteractiveMarkerControl::ROTATE_AXIS; - int_marker.controls.push_back(control); - control.name = "move_z"; - control.interaction_mode = visualization_msgs::InteractiveMarkerControl::MOVE_AXIS; + control.name = "move_plane_xy"; + control.interaction_mode = visualization_msgs::InteractiveMarkerControl::MOVE_PLANE; int_marker.controls.push_back(control); + + imarker_server_->insert(int_marker); imarker_server_->setCallback(int_marker.name, boost::bind( &createTFTab::processIMarkerFeedback, this, _1) ); From 8c52eb43ef2854c605a69cf4163c941f072b592b Mon Sep 17 00:00:00 2001 From: Davide Torielli Date: Mon, 25 Mar 2024 16:14:21 +0100 Subject: [PATCH 5/8] gitignore --- .gitignore | 2 ++ 1 file changed, 2 insertions(+) diff --git a/.gitignore b/.gitignore index f8bcd11..b1272b0 100644 --- a/.gitignore +++ b/.gitignore @@ -45,3 +45,5 @@ qtcreator-* # Catkin custom files CATKIN_IGNORE + +*.kdev4 From 7f09aa24c5efa68bc695999a6beea4069f4053e7 Mon Sep 17 00:00:00 2001 From: Davide Torielli Date: Mon, 25 Mar 2024 16:22:23 +0100 Subject: [PATCH 6/8] yes on z --- src/tf_visual_tools_gui.cpp | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/src/tf_visual_tools_gui.cpp b/src/tf_visual_tools_gui.cpp index 200bf5b..a122b40 100644 --- a/src/tf_visual_tools_gui.cpp +++ b/src/tf_visual_tools_gui.cpp @@ -239,16 +239,16 @@ void createTFTab::createNewIMarker(tf_data new_tf, bool has_menu) // control.interaction_mode = visualization_msgs::InteractiveMarkerControl::MOVE_AXIS; // int_marker.controls.push_back(control); -// control.orientation.w = 1; -// control.orientation.x = 0; -// control.orientation.y = 1; -// control.orientation.z = 0; + control.orientation.w = 1; + control.orientation.x = 0; + control.orientation.y = 1; + control.orientation.z = 0; // control.name = "rotate_y"; // control.interaction_mode = visualization_msgs::InteractiveMarkerControl::ROTATE_AXIS; // int_marker.controls.push_back(control); -// control.name = "move_y"; -// control.interaction_mode = visualization_msgs::InteractiveMarkerControl::MOVE_AXIS; -// int_marker.controls.push_back(control); + control.name = "move_y"; + control.interaction_mode = visualization_msgs::InteractiveMarkerControl::MOVE_AXIS; + int_marker.controls.push_back(control); // // control.orientation.w = 1; // control.orientation.x = 0; From 7a3152a910277d224bdc988050a4f36388565075 Mon Sep 17 00:00:00 2001 From: Davide Torielli Date: Mon, 25 Mar 2024 16:44:41 +0100 Subject: [PATCH 7/8] no z --- src/tf_visual_tools_gui.cpp | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/src/tf_visual_tools_gui.cpp b/src/tf_visual_tools_gui.cpp index a122b40..200bf5b 100644 --- a/src/tf_visual_tools_gui.cpp +++ b/src/tf_visual_tools_gui.cpp @@ -239,16 +239,16 @@ void createTFTab::createNewIMarker(tf_data new_tf, bool has_menu) // control.interaction_mode = visualization_msgs::InteractiveMarkerControl::MOVE_AXIS; // int_marker.controls.push_back(control); - control.orientation.w = 1; - control.orientation.x = 0; - control.orientation.y = 1; - control.orientation.z = 0; +// control.orientation.w = 1; +// control.orientation.x = 0; +// control.orientation.y = 1; +// control.orientation.z = 0; // control.name = "rotate_y"; // control.interaction_mode = visualization_msgs::InteractiveMarkerControl::ROTATE_AXIS; // int_marker.controls.push_back(control); - control.name = "move_y"; - control.interaction_mode = visualization_msgs::InteractiveMarkerControl::MOVE_AXIS; - int_marker.controls.push_back(control); +// control.name = "move_y"; +// control.interaction_mode = visualization_msgs::InteractiveMarkerControl::MOVE_AXIS; +// int_marker.controls.push_back(control); // // control.orientation.w = 1; // control.orientation.x = 0; From 61f1618d36083ab1c9b62fd2dc3933db5dc775cb Mon Sep 17 00:00:00 2001 From: Davide Torielli Date: Thu, 8 Aug 2024 16:55:19 +0200 Subject: [PATCH 8/8] again all directions --- src/tf_visual_tools_gui.cpp | 79 ++++++++++++++++++------------------- 1 file changed, 39 insertions(+), 40 deletions(-) diff --git a/src/tf_visual_tools_gui.cpp b/src/tf_visual_tools_gui.cpp index 200bf5b..82415ad 100644 --- a/src/tf_visual_tools_gui.cpp +++ b/src/tf_visual_tools_gui.cpp @@ -220,55 +220,54 @@ void createTFTab::createNewIMarker(tf_data new_tf, bool has_menu) int_marker.scale = 0.20; int_marker.name = new_tf.name_.toStdString(); - //visualization_msgs::InteractiveMarkerControl box_control; - //box_control.always_visible = true; - //box_control.markers.push_back(marker); - //box_control.interaction_mode = visualization_msgs::InteractiveMarkerControl::MOVE_ROTATE_3D; - //int_marker.controls.push_back(box_control); + // visualization_msgs::InteractiveMarkerControl box_control; + // box_control.always_visible = true; + // box_control.markers.push_back(marker); + // box_control.interaction_mode = visualization_msgs::InteractiveMarkerControl::MOVE_ROTATE_3D; + // int_marker.controls.push_back(box_control); // create the handles to control individual dofs visualization_msgs::InteractiveMarkerControl control; -// control.orientation.w = 1; -// control.orientation.x = 1; -// control.orientation.y = 0; -// control.orientation.z = 0; -// control.name = "rotate_x"; -// control.interaction_mode = visualization_msgs::InteractiveMarkerControl::ROTATE_AXIS; -// int_marker.controls.push_back(control); -// control.name = "move_x"; -// control.interaction_mode = visualization_msgs::InteractiveMarkerControl::MOVE_AXIS; -// int_marker.controls.push_back(control); - -// control.orientation.w = 1; -// control.orientation.x = 0; -// control.orientation.y = 1; -// control.orientation.z = 0; -// control.name = "rotate_y"; -// control.interaction_mode = visualization_msgs::InteractiveMarkerControl::ROTATE_AXIS; -// int_marker.controls.push_back(control); -// control.name = "move_y"; -// control.interaction_mode = visualization_msgs::InteractiveMarkerControl::MOVE_AXIS; -// int_marker.controls.push_back(control); -// -// control.orientation.w = 1; -// control.orientation.x = 0; -// control.orientation.y = 0; -// control.orientation.z = 1; -// control.name = "rotate_z"; -// control.interaction_mode = visualization_msgs::InteractiveMarkerControl::ROTATE_AXIS; -// int_marker.controls.push_back(control); -// control.name = "move_z"; -// control.interaction_mode = visualization_msgs::InteractiveMarkerControl::MOVE_AXIS; -// int_marker.controls.push_back(control); - + control.orientation.w = 1; + control.orientation.x = 1; + control.orientation.y = 0; + control.orientation.z = 0; + control.name = "rotate_x"; + control.interaction_mode = visualization_msgs::InteractiveMarkerControl::ROTATE_AXIS; + int_marker.controls.push_back(control); + control.name = "move_x"; + control.interaction_mode = visualization_msgs::InteractiveMarkerControl::MOVE_AXIS; + int_marker.controls.push_back(control); + control.orientation.w = 1; control.orientation.x = 0; control.orientation.y = 1; control.orientation.z = 0; - control.name = "move_plane_xy"; - control.interaction_mode = visualization_msgs::InteractiveMarkerControl::MOVE_PLANE; + control.name = "rotate_y"; + control.interaction_mode = visualization_msgs::InteractiveMarkerControl::ROTATE_AXIS; + int_marker.controls.push_back(control); + control.name = "move_y"; + control.interaction_mode = visualization_msgs::InteractiveMarkerControl::MOVE_AXIS; + int_marker.controls.push_back(control); + + control.orientation.w = 1; + control.orientation.x = 0; + control.orientation.y = 0; + control.orientation.z = 1; + control.name = "rotate_z"; + control.interaction_mode = visualization_msgs::InteractiveMarkerControl::ROTATE_AXIS; + int_marker.controls.push_back(control); + control.name = "move_z"; + control.interaction_mode = visualization_msgs::InteractiveMarkerControl::MOVE_AXIS; int_marker.controls.push_back(control); + // control.orientation.w = 1; + // control.orientation.x = 0; + // control.orientation.y = 1; + // control.orientation.z = 0; + // control.name = "move_plane_xy"; + // control.interaction_mode = visualization_msgs::InteractiveMarkerControl::MOVE_PLANE; + // int_marker.controls.push_back(control); imarker_server_->insert(int_marker);