#
-
roslaunch在一次传递中计算XML文件。包含按深度第一遍历顺序处理。标记按顺序计算,最后一个设置获胜。因此,如果一个参数有多个设置,则将使用为该参数指定的最后一个值。
-
依赖覆盖行为可能很脆弱。不能保证正确指定了重写(例如,如果在包含的文件中更改了参数名)。相反,建议使用$(arg)/设置完成覆盖行为。
替代参数
Roslaunch标记属性可以使用替换参数,Roslaunch 将在启动节点之前解析这些参数。当前支持的替换参数包括:
(1)
$ (env ENVIRONMENT_VARIABLE)
换当前环境中变量的值。如果未设置环境变量,则启动将失败。此值不能被<env>标记覆盖。
(2)
$ (optenv ENVIRONMENT_VARIABLE)
$(optenv ENVIRONMENT_VARIABLE default_value) |
如果环境变量已设置,请将其替换。如果提供了默认值,则在未设置环境变量时将使用该值。如果未提供默认值,则将使用空字符串。默认值可以是由空格分隔的多个单词。 |
example:
<param name="foo" value="$(optenv NUM_CPUS 1)" />
<param name="foo" value="$(optenv CONFIG_PATH /home/marvin/ros_workspace)" />
<param name="foo"

本文深入讲解ROS中的roslaunch工具,探讨其高级功能,包括参数覆盖、替代参数使用及常见标签解析,帮助开发者掌握更复杂场景下的配置技巧。
最低0.47元/天 解锁文章
8516

被折叠的 条评论
为什么被折叠?



