Pass values via command-line for arg in launch file
I would like to pass values via command-line for roslaunch. I tried it like below.
roslaunch hoge ar.launch marker_size:=10.0
But, the value on the screen was not changed. Could you suggest me what is wrong? In addition, could you let me know how should I do to pass values for roslaunch?
SUMMARY
========
PARAMETERS
* /ar_track_alvar/marker_size: 7.0
* /ar_track_alvar/max_new_marker_error: 0.08
* /ar_track_alvar/max_track_error: 0.15
ar.launch is defined like below.
<launch>
<include file="$(find ar_track_alvar)/launch/pr2_indiv.launch" >
<arg name="marker_size" default="7.0" />
<arg name="max_new_marker_error" default="0.08" />
<arg name="max_track_error" default="0.15" />
<arg name="cam_image_topic" default="/camera/dps/points" />
<arg name="cam_info_topic" default="/camera/rgb/camera_info" />
<arg name="output_frame" default="/camera_rgb_optical_frame" />
</include>
</launch>
I use original pr2_indiv.launch.
my environemt
- Ubuntu 18.04
- ROS1 melodic
Asked by graziegrazie on 2022-10-25 08:21:25 UTC
Comments
I think you must redeclare your argument in the parent launchfile and pass the value of this re-declared argument to this included launch file with something like
That's what you can learn from http://wiki.ros.org/roslaunch/XML/arg
Asked by vanmalleghema on 2022-10-25 13:31:45 UTC
@vanmalleghema
Thank you so much for your suggestion! That solves my problem!!
Asked by graziegrazie on 2022-10-31 00:03:10 UTC