rviz 无法识别我的插件
rviz does not recognize my plugin
我在努力让教程 rviz 插件显示在 rviz 中时遗漏了一些东西。我有 visualization_tutorials 的来源。在 git 存储库中,有 rviz_plugin_tutorials。我可以在 ROS 工作区内成功构建它,输出在 rviz_workspace/devel/lib 中显示为 librviz_plugin_tutorials.so。
我读到 rviz 使用 pluginlib 加载具有适当 plugin_description.xml 的插件并适当使用 PLUGINLIB_EXPORT_CLASS 宏。
我不明白这个机制应该如何运作。构建插件后,您所拥有的只是库(.so 文件)以及包和插件 .xml 文件。 运行ning 'rosrun rviz rviz' 应该如何让 rviz 找到这个新的库和插件描述文件?这是我的根本误解。当我 运行 rviz 和 运行ning rospack 不显示教程插件时,我没有看到教程插件:
honeywell@UGV-Laptop-1:~/rviz_workspace$ rospack plugins --attrib=plugin rviz
rviz /opt/ros/kinetic/share/rviz/plugin_description.xml
honeywell@UGV-Laptop-1:~/rviz_workspace$
感谢您的帮助
编辑:rviz 是 运行ning 来自 /opt/ros/kinetic/bin/rviz。我是否应该将我的 plugin_description.xml 和 librviz_plugin_tutorials.so 复制到工作区以外的其他地方?
我在这里犯的新手错误。我做了两件事来解决我的问题,然后意识到只需要一件。
1) 安装并构建了 rviz 源代码。这样做并执行 'rosrun rviz rviz' 后问题仍然存在。没有新插件。
2) 意识到我没有为这个工作区采购 devel/setup.bash。这样做然后 运行 rviz 产生了预期的结果。
我返回并从 src 中删除了 rviz 并删除了 devel 文件夹,但它仍然有效,因此似乎没有必要使用从源代码构建的 rviz。
我在努力让教程 rviz 插件显示在 rviz 中时遗漏了一些东西。我有 visualization_tutorials 的来源。在 git 存储库中,有 rviz_plugin_tutorials。我可以在 ROS 工作区内成功构建它,输出在 rviz_workspace/devel/lib 中显示为 librviz_plugin_tutorials.so。
我读到 rviz 使用 pluginlib 加载具有适当 plugin_description.xml 的插件并适当使用 PLUGINLIB_EXPORT_CLASS 宏。
我不明白这个机制应该如何运作。构建插件后,您所拥有的只是库(.so 文件)以及包和插件 .xml 文件。 运行ning 'rosrun rviz rviz' 应该如何让 rviz 找到这个新的库和插件描述文件?这是我的根本误解。当我 运行 rviz 和 运行ning rospack 不显示教程插件时,我没有看到教程插件:
honeywell@UGV-Laptop-1:~/rviz_workspace$ rospack plugins --attrib=plugin rviz
rviz /opt/ros/kinetic/share/rviz/plugin_description.xml
honeywell@UGV-Laptop-1:~/rviz_workspace$
感谢您的帮助
编辑:rviz 是 运行ning 来自 /opt/ros/kinetic/bin/rviz。我是否应该将我的 plugin_description.xml 和 librviz_plugin_tutorials.so 复制到工作区以外的其他地方?
我在这里犯的新手错误。我做了两件事来解决我的问题,然后意识到只需要一件。
1) 安装并构建了 rviz 源代码。这样做并执行 'rosrun rviz rviz' 后问题仍然存在。没有新插件。
2) 意识到我没有为这个工作区采购 devel/setup.bash。这样做然后 运行 rviz 产生了预期的结果。
我返回并从 src 中删除了 rviz 并删除了 devel 文件夹,但它仍然有效,因此似乎没有必要使用从源代码构建的 rviz。