名称重映射是为名称起别名,为名称添加前缀,该实现比节点重名更复杂些,不单是使用命名空间作为前缀、还可以使用节点名称最为前缀。两种策略的实现途径有多种:
(1)rosrun 命令
(2)launch 文件
(3)编码实现
3.1 rosrun设置话题重映射
rosrun名称重映射语法: rorun 包名 节点名 话题名:=新话题名称
3.2 launch文件设置话题重映射
<node pkg="xxx" type="xxx" name="xxx">
<remap from="原话题" to="新话题" />
</node>
3.3 编码设置话题名称
话题的名称与节点的命名空间、节点的名称是有一定关系的,话题名称大致可以分为三种类型:
(1)全局(话题参考ROS系统,与节点命名空间平级)
(2)相对(话题参考的是节点的命名空间,与节点名称平级)
(3)私有(话题参考节点名称,是节点名称的子级)
C++ 实现
(1)全局名称 格式:以/开头的名称,和节点名称无关
(2)相对名称 格式:非/开头的名称,参考命名空间(与节点名称平级)来确定话题名称
(3)私有名称 格式:以~开头的名称
python实现
(1)全局名称 格式:以/开头的名称,和节点名称无关
(2)相对名称 格式:非/开头的名称,参考命名空间(与节点名称平级)来确定话题名称
(3)私有名称 格式:以~开头的名称