From 37eeca2c836a4af7a1db86fd41fe4f7cf9947743 Mon Sep 17 00:00:00 2001 From: chyoo Date: Wed, 5 Aug 2026 16:47:35 +0900 Subject: [PATCH] fix: apply flat world settings to house model --- src/nav2_turtlebot_simulator/launch/simulator.launch.py | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/src/nav2_turtlebot_simulator/launch/simulator.launch.py b/src/nav2_turtlebot_simulator/launch/simulator.launch.py index 0cad3bc..fdb3953 100644 --- a/src/nav2_turtlebot_simulator/launch/simulator.launch.py +++ b/src/nav2_turtlebot_simulator/launch/simulator.launch.py @@ -52,7 +52,10 @@ def create_flat_house_world(gazebo_dir): os.makedirs(flat_model_dir, exist_ok=True) house_model_tree = ET.parse(model_path) - house_model = house_model_tree.getroot() + house_sdf = house_model_tree.getroot() + house_model = house_sdf.find('model') + if house_model is None: + raise RuntimeError('turtlebot3_house model is missing from model.sdf') house_model.attrib['name'] = 'turtlebot3_house_flat' house_static = house_model.find('static') if house_static is None: @@ -90,7 +93,7 @@ def create_flat_house_world(gazebo_dir): lighting.text = 'false' # ElementTree serializes Gazebo's frame='' as frame="", which is invalid SDF. - for element in house_model.iter(): + for element in house_sdf.iter(): if element.attrib.get('frame') == '': del element.attrib['frame']