{"id":2889,"date":"2022-07-22T17:55:44","date_gmt":"2022-07-22T17:55:44","guid":{"rendered":"https:\/\/robotica-facil-con-ros2.es\/?p=2889"},"modified":"2026-07-06T07:11:50","modified_gmt":"2026-07-06T07:11:50","slug":"gazebo-como-cargar-un-archivo-world-en-ros2","status":"publish","type":"post","link":"https:\/\/robotica-facil-con-ros2.es\/?p=2889","title":{"rendered":"GAZEBO. Como cargar un archivo world"},"content":{"rendered":"\t\t<div data-elementor-type=\"wp-post\" data-elementor-id=\"2889\" class=\"elementor elementor-2889\">\n\t\t\t\t\t\t<section class=\"elementor-section elementor-top-section elementor-element elementor-element-8f2973c elementor-section-boxed elementor-section-height-default elementor-section-height-default\" data-id=\"8f2973c\" data-element_type=\"section\" data-e-type=\"section\">\n\t\t\t\t\t\t<div class=\"elementor-container elementor-column-gap-default\">\n\t\t\t\t\t<div class=\"elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-9f4ba2e\" data-id=\"9f4ba2e\" data-element_type=\"column\" data-e-type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-7aa1974 elementor-widget elementor-widget-text-editor\" data-id=\"7aa1974\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p>En este art\u00edculo vamos a ver como cargar en Gazebo un archivo world. Para ello vamos a usar los archivos world que Gazebo incluye como ejemplos en su instalaci\u00f3n, los cuales se encuentran en la siguiente ruta <b><span style=\"color: #0170b9;\">usr\/share\/gazebo-\/worlds<\/span>.<\/b><\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-beee0b1 elementor-widget elementor-widget-image\" data-id=\"beee0b1\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<a href=\"https:\/\/robotica-facil-con-ros2.es\/wp-content\/uploads\/2022\/07\/id2889-gazebo-world-examples.png\" data-elementor-open-lightbox=\"no\">\n\t\t\t\t\t\t\t<img fetchpriority=\"high\" decoding=\"async\" width=\"786\" height=\"533\" src=\"https:\/\/robotica-facil-con-ros2.es\/wp-content\/uploads\/2022\/07\/id2889-gazebo-world-examples.png\" class=\"attachment-large size-large wp-image-2905\" alt=\"Ejemplos de archivos world incluidos en Gazebo\" srcset=\"https:\/\/robotica-facil-con-ros2.es\/wp-content\/uploads\/2022\/07\/id2889-gazebo-world-examples.png 786w, https:\/\/robotica-facil-con-ros2.es\/wp-content\/uploads\/2022\/07\/id2889-gazebo-world-examples-300x203.png 300w, https:\/\/robotica-facil-con-ros2.es\/wp-content\/uploads\/2022\/07\/id2889-gazebo-world-examples-768x521.png 768w\" sizes=\"(max-width: 786px) 100vw, 786px\" \/>\t\t\t\t\t\t\t\t<\/a>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-04b79af elementor-widget elementor-widget-text-editor\" data-id=\"04b79af\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p>Tambi\u00e9n podemos ver en este <a href=\"https:\/\/github.com\/osrf\/gazebo\/tree\/gazebo11\/worlds\">repositorio de GitHub<\/a> la lista con todos los archivos <em>world<\/em> incluidos con Gazebo.<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-dabc3ee elementor-widget elementor-widget-text-editor\" data-id=\"dabc3ee\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p>Los modelos de los objetos utilizados en estos ejemplos se encuentran almacenados en la siguiente ruta <b><span style=\"color: #0170b9;\">~\/.gazebo\/models<\/span>.<\/b><\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-08fe012 elementor-widget elementor-widget-text-editor\" data-id=\"08fe012\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<h3>Desde la l\u00ednea de comando de un terminal<\/h3><p>Desde el terminal podemos cargar un archivo <em>world<\/em> de la siguiente forma:<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-3a43666 elementor-widget elementor-widget-mdp-coder-elementor\" data-id=\"3a43666\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"mdp-coder-elementor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t        <!-- Start Coder for Elementor WordPress Plugin -->\n        <div\n            id=\"mdp-coder-3a43666\"\n            class=\"mdp-coder-elementor-box\"\n            data-theme=\"mdp-theme-tomorrow\"\n            data-dark-theme=\"mdp-theme-tomorrow\"\n        >\n            \n                <pre class=\"language-shell-session copy-to-clipboard\"data-previewers=\"\"><code>gazebo &lt;archivo_world&gt;<\/code><\/pre>\n                    <\/div>\n                <script>\n            \"use strict\";\n\n            \/** Handler when the DOM is fully loaded. *\/\n            let callback_3a43666 = function() {\n\n                \/** Set theme for coder widget. *\/\n                function setTheme() {\n\n                    \/** Foreach Code Widget. *\/\n                    let coderBoxes = document.querySelectorAll( '.mdp-coder-elementor-box' );\n\n                    for ( let coderBox of coderBoxes ) {\n\n                        let lightTheme = coderBox.dataset.theme;\n                        let darkTheme = coderBox.dataset.darkTheme;\n\n                        coderBox.className = '';\n                        if ( window.matchMedia && window.matchMedia( '(prefers-color-scheme: dark)' ).matches ) {\n\n                            coderBox.className = 'mdp-coder-elementor-box ' + darkTheme;\n\n                        } else {\n\n                            coderBox.className = 'mdp-coder-elementor-box ' + lightTheme;\n\n                        }\n\n                    }\n\n                }\n                setTheme();\n\n\n                \/** Watch for changes color-scheme. *\/\n                window.matchMedia(\"(prefers-color-scheme: dark)\").addListener( function() {\n                    setTheme();\n                } );\n\n                \n                if ( typeof Prism !== 'undefined' ) {\n\n                    Prism.plugins.autoloader.languages_path = 'https:\/\/robotica-facil-con-ros2.es\/wp-content\/plugins\/coder-elementor\/js\/prism\/components\/';\n                    Prism.highlightAll();\n                    Prism.fileHighlight();\n\n                }\n\n                \n            };\n\n            if (\n                document.readyState === \"complete\" ||\n                ( document.readyState !== \"loading\" && !document.documentElement.doScroll )\n            ) {\n                callback_3a43666();\n            } else {\n                document.addEventListener( \"DOMContentLoaded\", callback_3a43666 );\n            }\n\n        <\/script>\n                <!-- End Coder for Elementor WordPress Plugin -->\n\n        \t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-026fc03 elementor-widget elementor-widget-text-editor\" data-id=\"026fc03\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p>Donde <span style=\"color: #000000;\">&lt;archivo_world&gt;<\/span> es la ruta al archivo world, pudiendo ser:<\/p><ul><li style=\"list-style-type: none;\"><ul><li style=\"list-style-type: none;\"><ul><li>Relativa al directorio actual.<\/li><li>Absoluta.<\/li><li>Relativa a una ruta que se encuentre en la variable de entorno <span style=\"color: #0170b9;\"><strong>GAZEBO_RESOURCE_PATH<\/strong><\/span>.<\/li><li><span style=\"color: #0170b9;\"><strong><em>worlds\/&lt;archivo.world&gt;<\/em><\/strong><\/span> siendo en este caso uno de los archivos world que Gazebo incluye.<\/li><\/ul><\/li><\/ul><\/li><\/ul>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-c9afb99 elementor-widget elementor-widget-text-editor\" data-id=\"c9afb99\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p>Por ejemplo, el siguiente comando ejecutar\u00e1 Gazebo (tanto el servidor como el cliente) y cargar\u00e1 el archivo <em>cafe.world<\/em>.\u00a0<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-ceeb84f elementor-widget elementor-widget-mdp-coder-elementor\" data-id=\"ceeb84f\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"mdp-coder-elementor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t        <!-- Start Coder for Elementor WordPress Plugin -->\n        <div\n            id=\"mdp-coder-ceeb84f\"\n            class=\"mdp-coder-elementor-box\"\n            data-theme=\"mdp-theme-tomorrow\"\n            data-dark-theme=\"mdp-theme-tomorrow\"\n        >\n            \n                <pre class=\"language-shell-session copy-to-clipboard\"data-previewers=\"\"><code>gazebo worlds\/cafe.world<\/code><\/pre>\n                    <\/div>\n                <script>\n            \"use strict\";\n\n            \/** Handler when the DOM is fully loaded. *\/\n            let callback_ceeb84f = function() {\n\n                \/** Set theme for coder widget. *\/\n                function setTheme() {\n\n                    \/** Foreach Code Widget. *\/\n                    let coderBoxes = document.querySelectorAll( '.mdp-coder-elementor-box' );\n\n                    for ( let coderBox of coderBoxes ) {\n\n                        let lightTheme = coderBox.dataset.theme;\n                        let darkTheme = coderBox.dataset.darkTheme;\n\n                        coderBox.className = '';\n                        if ( window.matchMedia && window.matchMedia( '(prefers-color-scheme: dark)' ).matches ) {\n\n                            coderBox.className = 'mdp-coder-elementor-box ' + darkTheme;\n\n                        } else {\n\n                            coderBox.className = 'mdp-coder-elementor-box ' + lightTheme;\n\n                        }\n\n                    }\n\n                }\n                setTheme();\n\n\n                \/** Watch for changes color-scheme. *\/\n                window.matchMedia(\"(prefers-color-scheme: dark)\").addListener( function() {\n                    setTheme();\n                } );\n\n                \n                if ( typeof Prism !== 'undefined' ) {\n\n                    Prism.plugins.autoloader.languages_path = 'https:\/\/robotica-facil-con-ros2.es\/wp-content\/plugins\/coder-elementor\/js\/prism\/components\/';\n                    Prism.highlightAll();\n                    Prism.fileHighlight();\n\n                }\n\n                \n            };\n\n            if (\n                document.readyState === \"complete\" ||\n                ( document.readyState !== \"loading\" && !document.documentElement.doScroll )\n            ) {\n                callback_ceeb84f();\n            } else {\n                document.addEventListener( \"DOMContentLoaded\", callback_ceeb84f );\n            }\n\n        <\/script>\n                <!-- End Coder for Elementor WordPress Plugin -->\n\n        \t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-3f3e30e elementor-widget elementor-widget-image\" data-id=\"3f3e30e\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<a href=\"https:\/\/robotica-facil-con-ros2.es\/wp-content\/uploads\/2022\/07\/id2889-gazebo-cafe-world.png\" data-elementor-open-lightbox=\"no\">\n\t\t\t\t\t\t\t<img decoding=\"async\" width=\"1024\" height=\"622\" src=\"https:\/\/robotica-facil-con-ros2.es\/wp-content\/uploads\/2022\/07\/id2889-gazebo-cafe-world-1024x622.png\" class=\"attachment-large size-large wp-image-2936\" alt=\"gazebo cafe.world\" srcset=\"https:\/\/robotica-facil-con-ros2.es\/wp-content\/uploads\/2022\/07\/id2889-gazebo-cafe-world-1024x622.png 1024w, https:\/\/robotica-facil-con-ros2.es\/wp-content\/uploads\/2022\/07\/id2889-gazebo-cafe-world-300x182.png 300w, https:\/\/robotica-facil-con-ros2.es\/wp-content\/uploads\/2022\/07\/id2889-gazebo-cafe-world-768x467.png 768w, https:\/\/robotica-facil-con-ros2.es\/wp-content\/uploads\/2022\/07\/id2889-gazebo-cafe-world.png 1300w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/>\t\t\t\t\t\t\t\t<\/a>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-7844072 elementor-widget elementor-widget-text-editor\" data-id=\"7844072\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p>Si solo queremos ejecutar el servidor pero no el cliente (interfaz gr\u00e1fico), simplemente sustituimos <em>gazebo<\/em> por <span style=\"color: #0170b9;\"><strong><em>gzserver<\/em><\/strong><\/span> en la l\u00ednea de comando.<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-8ff9b30 elementor-widget elementor-widget-text-editor\" data-id=\"8ff9b30\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<h3>Desde un archivo launch usando ROS2<\/h3><p>Para lanzar Gazebo y cargar un archivo <i>world<\/i> desde ROS2 tendremos que realizar los siguientes pasos:<\/p><ol><li style=\"list-style-type: none;\"><ol><li style=\"list-style-type: none;\"><ol><li>Crear un paquete Python (o usar uno que ya tengamos).<\/li><li>A\u00f1adir una carpeta <span style=\"color: #0170b9;\"><i><b>launch<\/b><\/i><\/span> y crear en su interior un archivo <strong><span style=\"color: #0170b9;\"><i>.launch.py<\/i><\/span><\/strong><\/li><li>A\u00f1adir una carpeta <span style=\"color: #0170b9;\"><i><b>worlds<\/b><\/i><\/span> donde ubicaremos el archivo <i>world<\/i> que queramos cargar.<\/li><li>A\u00f1adir una carpeta <span style=\"color: #0170b9;\"><i><b>models<\/b><\/i><\/span> donde ubicaremos los archivos de los modelos que use el archivo <i>world<\/i>.<\/li><li>Modificar el archivo <span style=\"color: #0170b9;\"><i><b>setup.py<\/b><\/i><\/span> del paquete para incorporar a <span style=\"color: #0170b9;\"><i><b>data_files<\/b><\/i><\/span> las rutas de los archivos que queremos que se copien en la instalaci\u00f3n del paquete.<\/li><\/ol><\/li><\/ol><\/li><\/ol><p>Si necesitas m\u00e1s informaci\u00f3n sobre como realizar estos pasos puedes ver los siguientes art\u00edculos:<\/p><ul><li style=\"list-style-type: none;\"><ul><li style=\"list-style-type: none;\"><ul><li><a href=\"https:\/\/robotica-facil-con-ros2.es\/?p=3078\">ROS2. C\u00f3mo crear un paquete Python.<\/a><\/li><li><a href=\"https:\/\/robotica-facil-con-ros2.es\/?p=3186\">ROS2. A\u00f1adiendo carpetas adicionales a nuestro paquete Python.<\/a><\/li><\/ul><\/li><\/ul><\/li><\/ul>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-54e9d6f elementor-widget elementor-widget-text-editor\" data-id=\"54e9d6f\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p>Vamos a usar un paquete de ejemplo, al que he llamado <em>gazebo_world_launch<\/em>, que podemos descargar desde <a href=\"https:\/\/github.com\/joseecm-github\/gazebo_world_launch\">GitHub<\/a> o clonarlo ejecutando el siguiente comando desde un teminal:\u00a0<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-d1d10f5 elementor-widget elementor-widget-mdp-coder-elementor\" data-id=\"d1d10f5\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"mdp-coder-elementor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t        <!-- Start Coder for Elementor WordPress Plugin -->\n        <div\n            id=\"mdp-coder-d1d10f5\"\n            class=\"mdp-coder-elementor-box\"\n            data-theme=\"mdp-theme-tomorrow\"\n            data-dark-theme=\"mdp-theme-tomorrow\"\n        >\n            \n                <pre class=\"language-shell-session copy-to-clipboard\"data-previewers=\"\"><code>git clone https:\/\/github.com\/joseecm-github\/gazebo_world_launch\n<\/code><\/pre>\n                    <\/div>\n                <script>\n            \"use strict\";\n\n            \/** Handler when the DOM is fully loaded. *\/\n            let callback_d1d10f5 = function() {\n\n                \/** Set theme for coder widget. *\/\n                function setTheme() {\n\n                    \/** Foreach Code Widget. *\/\n                    let coderBoxes = document.querySelectorAll( '.mdp-coder-elementor-box' );\n\n                    for ( let coderBox of coderBoxes ) {\n\n                        let lightTheme = coderBox.dataset.theme;\n                        let darkTheme = coderBox.dataset.darkTheme;\n\n                        coderBox.className = '';\n                        if ( window.matchMedia && window.matchMedia( '(prefers-color-scheme: dark)' ).matches ) {\n\n                            coderBox.className = 'mdp-coder-elementor-box ' + darkTheme;\n\n                        } else {\n\n                            coderBox.className = 'mdp-coder-elementor-box ' + lightTheme;\n\n                        }\n\n                    }\n\n                }\n                setTheme();\n\n\n                \/** Watch for changes color-scheme. *\/\n                window.matchMedia(\"(prefers-color-scheme: dark)\").addListener( function() {\n                    setTheme();\n                } );\n\n                \n                if ( typeof Prism !== 'undefined' ) {\n\n                    Prism.plugins.autoloader.languages_path = 'https:\/\/robotica-facil-con-ros2.es\/wp-content\/plugins\/coder-elementor\/js\/prism\/components\/';\n                    Prism.highlightAll();\n                    Prism.fileHighlight();\n\n                }\n\n                \n            };\n\n            if (\n                document.readyState === \"complete\" ||\n                ( document.readyState !== \"loading\" && !document.documentElement.doScroll )\n            ) {\n                callback_d1d10f5();\n            } else {\n                document.addEventListener( \"DOMContentLoaded\", callback_d1d10f5 );\n            }\n\n        <\/script>\n                <!-- End Coder for Elementor WordPress Plugin -->\n\n        \t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-dae683f elementor-widget elementor-widget-text-editor\" data-id=\"dae683f\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p>Como puede verse en la siguiente imagen el paquete ya incluye las carpetas <i>launch<\/i>, <i>worlds<\/i> y <i>models<\/i>. En la carpeta <i>worlds<\/i> hemos ubicado el archivo <i>table.worl<\/i>d y dentro de la carpeta <i>models<\/i> se encuentra la informaci\u00f3n de los modelos que usa: <i>ground_plane<\/i>, <i>sun<\/i> y <i>table<\/i>.<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-3d48af7 elementor-widget elementor-widget-image\" data-id=\"3d48af7\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<a href=\"https:\/\/robotica-facil-con-ros2.es\/wp-content\/uploads\/2022\/07\/id2889-gazebo-world-package.png\" data-elementor-open-lightbox=\"no\">\n\t\t\t\t\t\t\t<img decoding=\"async\" src=\"https:\/\/robotica-facil-con-ros2.es\/wp-content\/uploads\/elementor\/thumbs\/id2889-gazebo-world-package-ps8tx87at1q9fqqzcg7ykkis9halqx541f4jba5dvg.png\" title=\"id2889 \u2013 gazebo world package\" alt=\"Estructura del paquete gazebo_world_launch\" loading=\"lazy\" \/>\t\t\t\t\t\t\t\t<\/a>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-b8cdb09 elementor-widget elementor-widget-text-editor\" data-id=\"b8cdb09\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p>Si abrimos el archivo <strong><em>gazebo_world.launch.py<\/em><\/strong> podemos ve el c\u00f3digo empleado para lanzar Gazebo y cargar el archivo <em>table.world<\/em>.\u00a0 En los comentarios a\u00f1adidos se explica para que sirven las diferentes l\u00edneas.\u00a0<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-bafe710 elementor-widget elementor-widget-mdp-coder-elementor\" data-id=\"bafe710\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"mdp-coder-elementor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t        <!-- Start Coder for Elementor WordPress Plugin -->\n        <div\n            id=\"mdp-coder-bafe710\"\n            class=\"mdp-coder-elementor-box\"\n            data-theme=\"mdp-theme-material-dark\"\n            data-dark-theme=\"mdp-theme-material-dark\"\n        >\n            \n                <pre class=\"language-python copy-to-clipboard\"data-previewers=\"\"><code>import os\nfrom launch import LaunchDescription\nfrom launch.actions import IncludeLaunchDescription\nfrom launch.launch_description_sources import PythonLaunchDescriptionSource\nfrom launch_ros.substitutions import FindPackageShare\n \ndef generate_launch_description():\n \n  # Obtenemos la ruta del paquete Gazebo ROS.\n  pkg_gazebo_ros = FindPackageShare(package=&#039;gazebo_ros&#039;).find(&#039;gazebo_ros&#039;)   \n  \n  # Obtenemos la ruta de instalaci&oacute;n de nuestro paquete.\n  pkg_install_path = FindPackageShare(package=&#039;gazebo_world_launch&#039;).find(&#039;gazebo_world_launch&#039;)\n \n  # Obtenemos la ruta del archivo world, que est&aacute; almacenado en la\n  # carpeta worlds del paquete.\n  world_file = &#039;table.world&#039;\n  world_path = os.path.join(pkg_install_path, &#039;worlds&#039;, world_file)\n   \n  # Obtenemos la ruta de la capeta models que es donde se encuentra\n  # la informaci&oacute;n del modelo que es empleado en nuestro archivo world\n  # y la guardamos en la variable de entorno GAZEBO_MODEL_PATH, que\n  # contiene las rutas donde busca Gazebo. \n  gazebo_models_path = os.path.join(pkg_install_path, &#039;models&#039;)\n  os.environ[&quot;GAZEBO_MODEL_PATH&quot;] = gazebo_models_path\n   \n  # Creamos una acci&oacute;n para ejecutar el archivo gzserver.launch.py,\n  # que se encuentra dentro de la carpeta launch del paquete\n  # Gazebo Ros. Lo que hace es arrancar el servidor de Gazebo\n  # cargando el archivo world que pasamos como argumento.\n  start_gazebo_server_cmd = IncludeLaunchDescription(\n    PythonLaunchDescriptionSource(os.path.join(pkg_gazebo_ros, &#039;launch&#039;, &#039;gzserver.launch.py&#039;)),\n    launch_arguments={&#039;world&#039;: world_path}.items())\n \n  # Creamos una acci&oacute;n para ejecutar el archivo gzclient.launch.py,\n  # que se encuentra dentro de la carpeta launch del paquete\n  # Gazebo Ros. Lo que hace es arrancar el cliente de Gazebo, que  \n  # es la interfaz gr&aacute;fica.\n  start_gazebo_client_cmd = IncludeLaunchDescription(\n    PythonLaunchDescriptionSource(os.path.join(pkg_gazebo_ros, &#039;launch&#039;, &#039;gzclient.launch.py&#039;)),\n    )\n \n  # Devolvemos un objeto LaunchDescription con las acciones que queremos \n  # realizar.\n  return LaunchDescription([\n    start_gazebo_server_cmd,\n    start_gazebo_client_cmd\n    ])<\/code><\/pre>\n                    <\/div>\n                <script>\n            \"use strict\";\n\n            \/** Handler when the DOM is fully loaded. *\/\n            let callback_bafe710 = function() {\n\n                \/** Set theme for coder widget. *\/\n                function setTheme() {\n\n                    \/** Foreach Code Widget. *\/\n                    let coderBoxes = document.querySelectorAll( '.mdp-coder-elementor-box' );\n\n                    for ( let coderBox of coderBoxes ) {\n\n                        let lightTheme = coderBox.dataset.theme;\n                        let darkTheme = coderBox.dataset.darkTheme;\n\n                        coderBox.className = '';\n                        if ( window.matchMedia && window.matchMedia( '(prefers-color-scheme: dark)' ).matches ) {\n\n                            coderBox.className = 'mdp-coder-elementor-box ' + darkTheme;\n\n                        } else {\n\n                            coderBox.className = 'mdp-coder-elementor-box ' + lightTheme;\n\n                        }\n\n                    }\n\n                }\n                setTheme();\n\n\n                \/** Watch for changes color-scheme. *\/\n                window.matchMedia(\"(prefers-color-scheme: dark)\").addListener( function() {\n                    setTheme();\n                } );\n\n                \n                if ( typeof Prism !== 'undefined' ) {\n\n                    Prism.plugins.autoloader.languages_path = 'https:\/\/robotica-facil-con-ros2.es\/wp-content\/plugins\/coder-elementor\/js\/prism\/components\/';\n                    Prism.highlightAll();\n                    Prism.fileHighlight();\n\n                }\n\n                \n            };\n\n            if (\n                document.readyState === \"complete\" ||\n                ( document.readyState !== \"loading\" && !document.documentElement.doScroll )\n            ) {\n                callback_bafe710();\n            } else {\n                document.addEventListener( \"DOMContentLoaded\", callback_bafe710 );\n            }\n\n        <\/script>\n                <!-- End Coder for Elementor WordPress Plugin -->\n\n        \t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-1f7fb2f elementor-widget elementor-widget-text-editor\" data-id=\"1f7fb2f\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p>Antes de usar el paquete tenemos que compilarlo. Para ello ejecutamos colcon build desde el directorio ra\u00edz de nuestro espacio de trabajo.<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-3075b63 elementor-widget elementor-widget-mdp-coder-elementor\" data-id=\"3075b63\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"mdp-coder-elementor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t        <!-- Start Coder for Elementor WordPress Plugin -->\n        <div\n            id=\"mdp-coder-3075b63\"\n            class=\"mdp-coder-elementor-box\"\n            data-theme=\"mdp-theme-tomorrow\"\n            data-dark-theme=\"mdp-theme-tomorrow\"\n        >\n            \n                <pre class=\"language-shell-session copy-to-clipboard\"data-previewers=\"\"><code>colcon build --packages-select gazebo_world_launch<\/code><\/pre>\n                    <\/div>\n                <script>\n            \"use strict\";\n\n            \/** Handler when the DOM is fully loaded. *\/\n            let callback_3075b63 = function() {\n\n                \/** Set theme for coder widget. *\/\n                function setTheme() {\n\n                    \/** Foreach Code Widget. *\/\n                    let coderBoxes = document.querySelectorAll( '.mdp-coder-elementor-box' );\n\n                    for ( let coderBox of coderBoxes ) {\n\n                        let lightTheme = coderBox.dataset.theme;\n                        let darkTheme = coderBox.dataset.darkTheme;\n\n                        coderBox.className = '';\n                        if ( window.matchMedia && window.matchMedia( '(prefers-color-scheme: dark)' ).matches ) {\n\n                            coderBox.className = 'mdp-coder-elementor-box ' + darkTheme;\n\n                        } else {\n\n                            coderBox.className = 'mdp-coder-elementor-box ' + lightTheme;\n\n                        }\n\n                    }\n\n                }\n                setTheme();\n\n\n                \/** Watch for changes color-scheme. *\/\n                window.matchMedia(\"(prefers-color-scheme: dark)\").addListener( function() {\n                    setTheme();\n                } );\n\n                \n                if ( typeof Prism !== 'undefined' ) {\n\n                    Prism.plugins.autoloader.languages_path = 'https:\/\/robotica-facil-con-ros2.es\/wp-content\/plugins\/coder-elementor\/js\/prism\/components\/';\n                    Prism.highlightAll();\n                    Prism.fileHighlight();\n\n                }\n\n                \n            };\n\n            if (\n                document.readyState === \"complete\" ||\n                ( document.readyState !== \"loading\" && !document.documentElement.doScroll )\n            ) {\n                callback_3075b63();\n            } else {\n                document.addEventListener( \"DOMContentLoaded\", callback_3075b63 );\n            }\n\n        <\/script>\n                <!-- End Coder for Elementor WordPress Plugin -->\n\n        \t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-88def6c elementor-widget elementor-widget-text-editor\" data-id=\"88def6c\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p>Y por \u00faltimo ejecutamos el archivo launch.<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-9d2cf78 elementor-widget elementor-widget-mdp-coder-elementor\" data-id=\"9d2cf78\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"mdp-coder-elementor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t        <!-- Start Coder for Elementor WordPress Plugin -->\n        <div\n            id=\"mdp-coder-9d2cf78\"\n            class=\"mdp-coder-elementor-box\"\n            data-theme=\"mdp-theme-tomorrow\"\n            data-dark-theme=\"mdp-theme-tomorrow\"\n        >\n            \n                <pre class=\"language-shell-session copy-to-clipboard\"data-previewers=\"\"><code>ros2 launch gazebo_world_launch gazebo_world.launch.py<\/code><\/pre>\n                    <\/div>\n                <script>\n            \"use strict\";\n\n            \/** Handler when the DOM is fully loaded. *\/\n            let callback_9d2cf78 = function() {\n\n                \/** Set theme for coder widget. *\/\n                function setTheme() {\n\n                    \/** Foreach Code Widget. *\/\n                    let coderBoxes = document.querySelectorAll( '.mdp-coder-elementor-box' );\n\n                    for ( let coderBox of coderBoxes ) {\n\n                        let lightTheme = coderBox.dataset.theme;\n                        let darkTheme = coderBox.dataset.darkTheme;\n\n                        coderBox.className = '';\n                        if ( window.matchMedia && window.matchMedia( '(prefers-color-scheme: dark)' ).matches ) {\n\n                            coderBox.className = 'mdp-coder-elementor-box ' + darkTheme;\n\n                        } else {\n\n                            coderBox.className = 'mdp-coder-elementor-box ' + lightTheme;\n\n                        }\n\n                    }\n\n                }\n                setTheme();\n\n\n                \/** Watch for changes color-scheme. *\/\n                window.matchMedia(\"(prefers-color-scheme: dark)\").addListener( function() {\n                    setTheme();\n                } );\n\n                \n                if ( typeof Prism !== 'undefined' ) {\n\n                    Prism.plugins.autoloader.languages_path = 'https:\/\/robotica-facil-con-ros2.es\/wp-content\/plugins\/coder-elementor\/js\/prism\/components\/';\n                    Prism.highlightAll();\n                    Prism.fileHighlight();\n\n                }\n\n                \n            };\n\n            if (\n                document.readyState === \"complete\" ||\n                ( document.readyState !== \"loading\" && !document.documentElement.doScroll )\n            ) {\n                callback_9d2cf78();\n            } else {\n                document.addEventListener( \"DOMContentLoaded\", callback_9d2cf78 );\n            }\n\n        <\/script>\n                <!-- End Coder for Elementor WordPress Plugin -->\n\n        \t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-f744ccc elementor-widget elementor-widget-image\" data-id=\"f744ccc\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<a href=\"https:\/\/robotica-facil-con-ros2.es\/wp-content\/uploads\/2022\/07\/id2889-gazebo-table-world.png\" data-elementor-open-lightbox=\"no\">\n\t\t\t\t\t\t\t<img decoding=\"async\" width=\"1024\" height=\"519\" src=\"https:\/\/robotica-facil-con-ros2.es\/wp-content\/uploads\/2022\/07\/id2889-gazebo-table-world-1024x519.png\" class=\"attachment-large size-large wp-image-3046\" alt=\"Ejemplo de archivo world de Gazebo\" srcset=\"https:\/\/robotica-facil-con-ros2.es\/wp-content\/uploads\/2022\/07\/id2889-gazebo-table-world-1024x519.png 1024w, https:\/\/robotica-facil-con-ros2.es\/wp-content\/uploads\/2022\/07\/id2889-gazebo-table-world-300x152.png 300w, https:\/\/robotica-facil-con-ros2.es\/wp-content\/uploads\/2022\/07\/id2889-gazebo-table-world-768x390.png 768w, https:\/\/robotica-facil-con-ros2.es\/wp-content\/uploads\/2022\/07\/id2889-gazebo-table-world.png 1179w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/>\t\t\t\t\t\t\t\t<\/a>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/section>\n\t\t\t\t<\/div>\n\t\t","protected":false},"excerpt":{"rendered":"<p>En este art\u00edculo vamos a ver como cargar en Gazebo un archivo world. Para ello vamos a usar los archivos world que Gazebo incluye como ejemplos en su instalaci\u00f3n, los cuales se encuentran en la siguiente ruta usr\/share\/gazebo-\/worlds. Tambi\u00e9n podemos ver en este repositorio de GitHub la lista con todos los archivos world incluidos con [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":3065,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"site-sidebar-layout":"default","site-content-layout":"","ast-site-content-layout":"","site-content-style":"default","site-sidebar-style":"default","ast-global-header-display":"","ast-banner-title-visibility":"","ast-main-header-display":"","ast-hfb-above-header-display":"","ast-hfb-below-header-display":"","ast-hfb-mobile-header-display":"","site-post-title":"","ast-breadcrumbs-content":"","ast-featured-img":"","footer-sml-layout":"","theme-transparent-header-meta":"","adv-header-id-meta":"","stick-header-meta":"","header-above-stick-meta":"","header-main-stick-meta":"","header-below-stick-meta":"","astra-migrate-meta-layouts":"default","ast-page-background-enabled":"default","ast-page-background-meta":{"desktop":{"background-color":"var(--ast-global-color-4)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"tablet":{"background-color":"","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"mobile":{"background-color":"","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""}},"ast-content-background-meta":{"desktop":{"background-color":"var(--ast-global-color-5)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"tablet":{"background-color":"var(--ast-global-color-5)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"mobile":{"background-color":"var(--ast-global-color-5)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""}},"_elementor_version":"4.1.4","footnotes":""},"categories":[5,10],"tags":[12,16,7,20],"class_list":["post-2889","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-ros2","category-simulacion","tag-gazebo","tag-launch","tag-ros2","tag-world"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 4.9.9 - aioseo.com -->\n\t<meta name=\"description\" content=\"En este art\u00edculo vamos a ver como cargar en Gazebo un archivo world. Para ello vamos a usar los archivos world que Gazebo incluye como ejemplos en su instalaci\u00f3n, los cuales se encuentran en la siguiente ruta usr\/share\/gazebo-\/worlds. Tambi\u00e9n podemos ver en este repositorio de GitHub la lista con todos los archivos world incluidos con\" \/>\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<meta name=\"author\" content=\"Jose Enrique Cabrera\"\/>\n\t<link rel=\"canonical\" href=\"https:\/\/robotica-facil-con-ros2.es\/?p=2889\" \/>\n\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 4.9.9\" \/>\n\t\t<meta property=\"og:locale\" content=\"es_ES\" \/>\n\t\t<meta property=\"og:site_name\" content=\"- GAZEBO. Como cargar un archivo world\" \/>\n\t\t<meta property=\"og:type\" content=\"article\" \/>\n\t\t<meta property=\"og:title\" content=\"GAZEBO. Como cargar un archivo world -\" \/>\n\t\t<meta property=\"og:description\" content=\"En este art\u00edculo vamos a ver como cargar en Gazebo un archivo world. Para ello vamos a usar los archivos world que Gazebo incluye como ejemplos en su instalaci\u00f3n, los cuales se encuentran en la siguiente ruta usr\/share\/gazebo-\/worlds. Tambi\u00e9n podemos ver en este repositorio de GitHub la lista con todos los archivos world incluidos con\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/robotica-facil-con-ros2.es\/?p=2889\" \/>\n\t\t<meta property=\"og:image\" content=\"https:\/\/robotica-facil-con-ros2.es\/wp-content\/uploads\/2022\/07\/id2889p-gazebo-load-world.png\" \/>\n\t\t<meta property=\"og:image:secure_url\" content=\"https:\/\/robotica-facil-con-ros2.es\/wp-content\/uploads\/2022\/07\/id2889p-gazebo-load-world.png\" \/>\n\t\t<meta property=\"og:image:width\" content=\"1280\" \/>\n\t\t<meta property=\"og:image:height\" content=\"720\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2022-07-22T17:55:44+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2026-07-06T07:11:50+00:00\" \/>\n\t\t<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n\t\t<meta name=\"twitter:site\" content=\"@RFconROS2\" \/>\n\t\t<meta name=\"twitter:title\" content=\"GAZEBO. Como cargar un archivo world -\" \/>\n\t\t<meta name=\"twitter:description\" content=\"En este art\u00edculo vamos a ver como cargar en Gazebo un archivo world. Para ello vamos a usar los archivos world que Gazebo incluye como ejemplos en su instalaci\u00f3n, los cuales se encuentran en la siguiente ruta usr\/share\/gazebo-\/worlds. Tambi\u00e9n podemos ver en este repositorio de GitHub la lista con todos los archivos world incluidos con\" \/>\n\t\t<meta name=\"twitter:creator\" content=\"@RFconROS2\" \/>\n\t\t<meta name=\"twitter:image\" content=\"https:\/\/robotica-facil-con-ros2.es\/wp-content\/uploads\/2022\/07\/id2889p-gazebo-load-world.png\" \/>\n\t\t<meta name=\"twitter:label1\" content=\"Escrito por\" \/>\n\t\t<meta name=\"twitter:data1\" content=\"Jose Enrique Cabrera\" \/>\n\t\t<meta name=\"twitter:label2\" content=\"Tiempo de lectura estimado\" \/>\n\t\t<meta name=\"twitter:data2\" content=\"4 minutos\" \/>\n\t\t<script type=\"application\/ld+json\" class=\"aioseo-schema\">\n\t\t\t{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"BlogPosting\",\"@id\":\"https:\\\/\\\/robotica-facil-con-ros2.es\\\/?p=2889#blogposting\",\"name\":\"GAZEBO. Como cargar un archivo world -\",\"headline\":\"GAZEBO. Como cargar un archivo world\",\"author\":{\"@id\":\"https:\\\/\\\/robotica-facil-con-ros2.es\\\/?author=1#author\"},\"publisher\":{\"@id\":\"https:\\\/\\\/robotica-facil-con-ros2.es\\\/#person\"},\"image\":{\"@type\":\"ImageObject\",\"url\":\"https:\\\/\\\/robotica-facil-con-ros2.es\\\/wp-content\\\/uploads\\\/2022\\\/07\\\/id2889p-gazebo-load-world.png\",\"width\":1280,\"height\":720,\"caption\":\"Como cargar un archivo world en gazebo\"},\"datePublished\":\"2022-07-22T17:55:44+00:00\",\"dateModified\":\"2026-07-06T07:11:50+00:00\",\"inLanguage\":\"es-ES\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/robotica-facil-con-ros2.es\\\/?p=2889#webpage\"},\"isPartOf\":{\"@id\":\"https:\\\/\\\/robotica-facil-con-ros2.es\\\/?p=2889#webpage\"},\"articleSection\":\"ROS2, SIMULACI\\u00d3N, GAZEBO, LAUNCH, ROS2, WORLD\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/robotica-facil-con-ros2.es\\\/?p=2889#breadcrumblist\",\"itemListElement\":[{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/robotica-facil-con-ros2.es#listItem\",\"position\":1,\"name\":\"Inicio\",\"item\":\"https:\\\/\\\/robotica-facil-con-ros2.es\",\"nextItem\":{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/robotica-facil-con-ros2.es\\\/?cat=5#listItem\",\"name\":\"ROS2\"}},{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/robotica-facil-con-ros2.es\\\/?cat=5#listItem\",\"position\":2,\"name\":\"ROS2\",\"item\":\"https:\\\/\\\/robotica-facil-con-ros2.es\\\/?cat=5\",\"nextItem\":{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/robotica-facil-con-ros2.es\\\/?p=2889#listItem\",\"name\":\"GAZEBO. Como cargar un archivo world\"},\"previousItem\":{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/robotica-facil-con-ros2.es#listItem\",\"name\":\"Inicio\"}},{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/robotica-facil-con-ros2.es\\\/?p=2889#listItem\",\"position\":3,\"name\":\"GAZEBO. Como cargar un archivo world\",\"previousItem\":{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/robotica-facil-con-ros2.es\\\/?cat=5#listItem\",\"name\":\"ROS2\"}}]},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/robotica-facil-con-ros2.es\\\/#person\",\"name\":\"Jose Enrique Cabrera\",\"image\":{\"@type\":\"ImageObject\",\"@id\":\"https:\\\/\\\/robotica-facil-con-ros2.es\\\/?p=2889#personImage\",\"url\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/7fb8a5b8671a5fde1ab097847642f4ec46f3150e6ef27ed7fe4f7055bb02a052?s=96&d=mm&r=g\",\"width\":96,\"height\":96,\"caption\":\"Jose Enrique Cabrera\"}},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/robotica-facil-con-ros2.es\\\/?author=1#author\",\"url\":\"https:\\\/\\\/robotica-facil-con-ros2.es\\\/?author=1\",\"name\":\"Jose Enrique Cabrera\",\"image\":{\"@type\":\"ImageObject\",\"@id\":\"https:\\\/\\\/robotica-facil-con-ros2.es\\\/?p=2889#authorImage\",\"url\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/7fb8a5b8671a5fde1ab097847642f4ec46f3150e6ef27ed7fe4f7055bb02a052?s=96&d=mm&r=g\",\"width\":96,\"height\":96,\"caption\":\"Jose Enrique Cabrera\"}},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/robotica-facil-con-ros2.es\\\/?p=2889#webpage\",\"url\":\"https:\\\/\\\/robotica-facil-con-ros2.es\\\/?p=2889\",\"name\":\"GAZEBO. Como cargar un archivo world -\",\"description\":\"En este art\\u00edculo vamos a ver como cargar en Gazebo un archivo world. Para ello vamos a usar los archivos world que Gazebo incluye como ejemplos en su instalaci\\u00f3n, los cuales se encuentran en la siguiente ruta usr\\\/share\\\/gazebo-\\\/worlds. Tambi\\u00e9n podemos ver en este repositorio de GitHub la lista con todos los archivos world incluidos con\",\"inLanguage\":\"es-ES\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/robotica-facil-con-ros2.es\\\/#website\"},\"breadcrumb\":{\"@id\":\"https:\\\/\\\/robotica-facil-con-ros2.es\\\/?p=2889#breadcrumblist\"},\"author\":{\"@id\":\"https:\\\/\\\/robotica-facil-con-ros2.es\\\/?author=1#author\"},\"creator\":{\"@id\":\"https:\\\/\\\/robotica-facil-con-ros2.es\\\/?author=1#author\"},\"image\":{\"@type\":\"ImageObject\",\"url\":\"https:\\\/\\\/robotica-facil-con-ros2.es\\\/wp-content\\\/uploads\\\/2022\\\/07\\\/id2889p-gazebo-load-world.png\",\"@id\":\"https:\\\/\\\/robotica-facil-con-ros2.es\\\/?p=2889\\\/#mainImage\",\"width\":1280,\"height\":720,\"caption\":\"Como cargar un archivo world en gazebo\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/robotica-facil-con-ros2.es\\\/?p=2889#mainImage\"},\"datePublished\":\"2022-07-22T17:55:44+00:00\",\"dateModified\":\"2026-07-06T07:11:50+00:00\"},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/robotica-facil-con-ros2.es\\\/#website\",\"url\":\"https:\\\/\\\/robotica-facil-con-ros2.es\\\/\",\"description\":\"Rob\\u00f3tica con ROS2\",\"inLanguage\":\"es-ES\",\"publisher\":{\"@id\":\"https:\\\/\\\/robotica-facil-con-ros2.es\\\/#person\"}}]}\n\t\t<\/script>\n\t\t<!-- All in One SEO -->\n\n","aioseo_head_json":{"title":"GAZEBO. Como cargar un archivo world -","description":"En este art\u00edculo vamos a ver como cargar en Gazebo un archivo world. Para ello vamos a usar los archivos world que Gazebo incluye como ejemplos en su instalaci\u00f3n, los cuales se encuentran en la siguiente ruta usr\/share\/gazebo-\/worlds. Tambi\u00e9n podemos ver en este repositorio de GitHub la lista con todos los archivos world incluidos con","canonical_url":"https:\/\/robotica-facil-con-ros2.es\/?p=2889","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"BlogPosting","@id":"https:\/\/robotica-facil-con-ros2.es\/?p=2889#blogposting","name":"GAZEBO. Como cargar un archivo world -","headline":"GAZEBO. Como cargar un archivo world","author":{"@id":"https:\/\/robotica-facil-con-ros2.es\/?author=1#author"},"publisher":{"@id":"https:\/\/robotica-facil-con-ros2.es\/#person"},"image":{"@type":"ImageObject","url":"https:\/\/robotica-facil-con-ros2.es\/wp-content\/uploads\/2022\/07\/id2889p-gazebo-load-world.png","width":1280,"height":720,"caption":"Como cargar un archivo world en gazebo"},"datePublished":"2022-07-22T17:55:44+00:00","dateModified":"2026-07-06T07:11:50+00:00","inLanguage":"es-ES","mainEntityOfPage":{"@id":"https:\/\/robotica-facil-con-ros2.es\/?p=2889#webpage"},"isPartOf":{"@id":"https:\/\/robotica-facil-con-ros2.es\/?p=2889#webpage"},"articleSection":"ROS2, SIMULACI\u00d3N, GAZEBO, LAUNCH, ROS2, WORLD"},{"@type":"BreadcrumbList","@id":"https:\/\/robotica-facil-con-ros2.es\/?p=2889#breadcrumblist","itemListElement":[{"@type":"ListItem","@id":"https:\/\/robotica-facil-con-ros2.es#listItem","position":1,"name":"Inicio","item":"https:\/\/robotica-facil-con-ros2.es","nextItem":{"@type":"ListItem","@id":"https:\/\/robotica-facil-con-ros2.es\/?cat=5#listItem","name":"ROS2"}},{"@type":"ListItem","@id":"https:\/\/robotica-facil-con-ros2.es\/?cat=5#listItem","position":2,"name":"ROS2","item":"https:\/\/robotica-facil-con-ros2.es\/?cat=5","nextItem":{"@type":"ListItem","@id":"https:\/\/robotica-facil-con-ros2.es\/?p=2889#listItem","name":"GAZEBO. Como cargar un archivo world"},"previousItem":{"@type":"ListItem","@id":"https:\/\/robotica-facil-con-ros2.es#listItem","name":"Inicio"}},{"@type":"ListItem","@id":"https:\/\/robotica-facil-con-ros2.es\/?p=2889#listItem","position":3,"name":"GAZEBO. Como cargar un archivo world","previousItem":{"@type":"ListItem","@id":"https:\/\/robotica-facil-con-ros2.es\/?cat=5#listItem","name":"ROS2"}}]},{"@type":"Person","@id":"https:\/\/robotica-facil-con-ros2.es\/#person","name":"Jose Enrique Cabrera","image":{"@type":"ImageObject","@id":"https:\/\/robotica-facil-con-ros2.es\/?p=2889#personImage","url":"https:\/\/secure.gravatar.com\/avatar\/7fb8a5b8671a5fde1ab097847642f4ec46f3150e6ef27ed7fe4f7055bb02a052?s=96&d=mm&r=g","width":96,"height":96,"caption":"Jose Enrique Cabrera"}},{"@type":"Person","@id":"https:\/\/robotica-facil-con-ros2.es\/?author=1#author","url":"https:\/\/robotica-facil-con-ros2.es\/?author=1","name":"Jose Enrique Cabrera","image":{"@type":"ImageObject","@id":"https:\/\/robotica-facil-con-ros2.es\/?p=2889#authorImage","url":"https:\/\/secure.gravatar.com\/avatar\/7fb8a5b8671a5fde1ab097847642f4ec46f3150e6ef27ed7fe4f7055bb02a052?s=96&d=mm&r=g","width":96,"height":96,"caption":"Jose Enrique Cabrera"}},{"@type":"WebPage","@id":"https:\/\/robotica-facil-con-ros2.es\/?p=2889#webpage","url":"https:\/\/robotica-facil-con-ros2.es\/?p=2889","name":"GAZEBO. Como cargar un archivo world -","description":"En este art\u00edculo vamos a ver como cargar en Gazebo un archivo world. Para ello vamos a usar los archivos world que Gazebo incluye como ejemplos en su instalaci\u00f3n, los cuales se encuentran en la siguiente ruta usr\/share\/gazebo-\/worlds. Tambi\u00e9n podemos ver en este repositorio de GitHub la lista con todos los archivos world incluidos con","inLanguage":"es-ES","isPartOf":{"@id":"https:\/\/robotica-facil-con-ros2.es\/#website"},"breadcrumb":{"@id":"https:\/\/robotica-facil-con-ros2.es\/?p=2889#breadcrumblist"},"author":{"@id":"https:\/\/robotica-facil-con-ros2.es\/?author=1#author"},"creator":{"@id":"https:\/\/robotica-facil-con-ros2.es\/?author=1#author"},"image":{"@type":"ImageObject","url":"https:\/\/robotica-facil-con-ros2.es\/wp-content\/uploads\/2022\/07\/id2889p-gazebo-load-world.png","@id":"https:\/\/robotica-facil-con-ros2.es\/?p=2889\/#mainImage","width":1280,"height":720,"caption":"Como cargar un archivo world en gazebo"},"primaryImageOfPage":{"@id":"https:\/\/robotica-facil-con-ros2.es\/?p=2889#mainImage"},"datePublished":"2022-07-22T17:55:44+00:00","dateModified":"2026-07-06T07:11:50+00:00"},{"@type":"WebSite","@id":"https:\/\/robotica-facil-con-ros2.es\/#website","url":"https:\/\/robotica-facil-con-ros2.es\/","description":"Rob\u00f3tica con ROS2","inLanguage":"es-ES","publisher":{"@id":"https:\/\/robotica-facil-con-ros2.es\/#person"}}]},"og:locale":"es_ES","og:site_name":"- GAZEBO. Como cargar un archivo world","og:type":"article","og:title":"GAZEBO. Como cargar un archivo world -","og:description":"En este art\u00edculo vamos a ver como cargar en Gazebo un archivo world. Para ello vamos a usar los archivos world que Gazebo incluye como ejemplos en su instalaci\u00f3n, los cuales se encuentran en la siguiente ruta usr\/share\/gazebo-\/worlds. Tambi\u00e9n podemos ver en este repositorio de GitHub la lista con todos los archivos world incluidos con","og:url":"https:\/\/robotica-facil-con-ros2.es\/?p=2889","og:image":"https:\/\/robotica-facil-con-ros2.es\/wp-content\/uploads\/2022\/07\/id2889p-gazebo-load-world.png","og:image:secure_url":"https:\/\/robotica-facil-con-ros2.es\/wp-content\/uploads\/2022\/07\/id2889p-gazebo-load-world.png","og:image:width":1280,"og:image:height":720,"article:published_time":"2022-07-22T17:55:44+00:00","article:modified_time":"2026-07-06T07:11:50+00:00","twitter:card":"summary_large_image","twitter:site":"@RFconROS2","twitter:title":"GAZEBO. Como cargar un archivo world -","twitter:description":"En este art\u00edculo vamos a ver como cargar en Gazebo un archivo world. Para ello vamos a usar los archivos world que Gazebo incluye como ejemplos en su instalaci\u00f3n, los cuales se encuentran en la siguiente ruta usr\/share\/gazebo-\/worlds. Tambi\u00e9n podemos ver en este repositorio de GitHub la lista con todos los archivos world incluidos con","twitter:creator":"@RFconROS2","twitter:image":"https:\/\/robotica-facil-con-ros2.es\/wp-content\/uploads\/2022\/07\/id2889p-gazebo-load-world.png","twitter:label1":"Escrito por","twitter:data1":"Jose Enrique Cabrera","twitter:label2":"Tiempo de lectura estimado","twitter:data2":"4 minutos"},"aioseo_meta_data":{"post_id":"2889","title":null,"description":null,"keywords":null,"keyphrases":null,"primary_term":null,"canonical_url":null,"og_title":null,"og_description":null,"og_object_type":"default","og_image_type":"default","og_image_url":null,"og_image_width":null,"og_image_height":null,"og_image_custom_url":null,"og_image_custom_fields":null,"og_video":null,"og_custom_url":null,"og_article_section":null,"og_article_tags":null,"twitter_use_og":false,"twitter_card":"default","twitter_image_type":"default","twitter_image_url":null,"twitter_image_custom_url":null,"twitter_image_custom_fields":null,"twitter_title":null,"twitter_description":null,"schema":{"blockGraphs":[],"customGraphs":[],"default":{"data":{"Article":[],"Course":[],"Dataset":[],"FAQPage":[],"Movie":[],"Person":[],"Product":[],"ProductReview":[],"Car":[],"Recipe":[],"Service":[],"SoftwareApplication":[],"WebPage":[]},"graphName":"","isEnabled":true},"graphs":[],"defaultGraph":"","defaultPostTypeGraph":""},"schema_type":"default","schema_type_options":null,"pillar_content":false,"robots_default":true,"robots_noindex":false,"robots_noarchive":false,"robots_nosnippet":false,"robots_nofollow":false,"robots_noimageindex":false,"robots_noodp":false,"robots_notranslate":false,"robots_max_snippet":null,"robots_max_videopreview":null,"robots_max_imagepreview":"large","priority":null,"frequency":null,"local_seo":null,"breadcrumb_settings":null,"limit_modified_date":false,"ai":null,"created":"2022-09-08 20:54:24","updated":"2026-07-06 07:28:53","seo_analyzer_scan_date":null},"aioseo_breadcrumb":"<div class=\"aioseo-breadcrumbs\"><span class=\"aioseo-breadcrumb\">\n\t\t\t<a href=\"https:\/\/robotica-facil-con-ros2.es\" title=\"Inicio\">Inicio<\/a>\n\t\t<\/span><span class=\"aioseo-breadcrumb-separator\">&raquo;<\/span><span class=\"aioseo-breadcrumb\">\n\t\t\t<a href=\"https:\/\/robotica-facil-con-ros2.es\/?cat=5\" title=\"ROS2\">ROS2<\/a>\n\t\t<\/span><span class=\"aioseo-breadcrumb-separator\">&raquo;<\/span><span class=\"aioseo-breadcrumb\">\n\t\t\tGAZEBO. Como cargar un archivo world\n\t\t<\/span><\/div>","aioseo_breadcrumb_json":[{"label":"Inicio","link":"https:\/\/robotica-facil-con-ros2.es"},{"label":"ROS2","link":"https:\/\/robotica-facil-con-ros2.es\/?cat=5"},{"label":"GAZEBO. Como cargar un archivo world","link":"https:\/\/robotica-facil-con-ros2.es\/?p=2889"}],"rttpg_featured_image_url":{"full":["https:\/\/robotica-facil-con-ros2.es\/wp-content\/uploads\/2022\/07\/id2889p-gazebo-load-world.png",1280,720,false],"landscape":["https:\/\/robotica-facil-con-ros2.es\/wp-content\/uploads\/2022\/07\/id2889p-gazebo-load-world.png",1280,720,false],"portraits":["https:\/\/robotica-facil-con-ros2.es\/wp-content\/uploads\/2022\/07\/id2889p-gazebo-load-world.png",1280,720,false],"thumbnail":["https:\/\/robotica-facil-con-ros2.es\/wp-content\/uploads\/2022\/07\/id2889p-gazebo-load-world-150x150.png",150,150,true],"medium":["https:\/\/robotica-facil-con-ros2.es\/wp-content\/uploads\/2022\/07\/id2889p-gazebo-load-world-300x169.png",300,169,true],"large":["https:\/\/robotica-facil-con-ros2.es\/wp-content\/uploads\/2022\/07\/id2889p-gazebo-load-world-1024x576.png",1024,576,true],"1536x1536":["https:\/\/robotica-facil-con-ros2.es\/wp-content\/uploads\/2022\/07\/id2889p-gazebo-load-world.png",1280,720,false],"2048x2048":["https:\/\/robotica-facil-con-ros2.es\/wp-content\/uploads\/2022\/07\/id2889p-gazebo-load-world.png",1280,720,false]},"rttpg_author":{"display_name":"Jose Enrique Cabrera","author_link":"https:\/\/robotica-facil-con-ros2.es\/?author=1"},"rttpg_comment":0,"rttpg_category":"<a href=\"https:\/\/robotica-facil-con-ros2.es\/?cat=5\" rel=\"category\">ROS2<\/a> <a href=\"https:\/\/robotica-facil-con-ros2.es\/?cat=10\" rel=\"category\">SIMULACI\u00d3N<\/a>","rttpg_excerpt":"En este art\u00edculo vamos a ver como cargar en Gazebo un archivo world. Para ello vamos a usar los archivos world que Gazebo incluye como ejemplos en su instalaci\u00f3n, los cuales se encuentran en la siguiente ruta usr\/share\/gazebo-\/worlds. Tambi\u00e9n podemos ver en este repositorio de GitHub la lista con todos los archivos world incluidos con&hellip;","_links":{"self":[{"href":"https:\/\/robotica-facil-con-ros2.es\/index.php?rest_route=\/wp\/v2\/posts\/2889","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/robotica-facil-con-ros2.es\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/robotica-facil-con-ros2.es\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/robotica-facil-con-ros2.es\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/robotica-facil-con-ros2.es\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=2889"}],"version-history":[{"count":167,"href":"https:\/\/robotica-facil-con-ros2.es\/index.php?rest_route=\/wp\/v2\/posts\/2889\/revisions"}],"predecessor-version":[{"id":9317,"href":"https:\/\/robotica-facil-con-ros2.es\/index.php?rest_route=\/wp\/v2\/posts\/2889\/revisions\/9317"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/robotica-facil-con-ros2.es\/index.php?rest_route=\/wp\/v2\/media\/3065"}],"wp:attachment":[{"href":"https:\/\/robotica-facil-con-ros2.es\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=2889"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/robotica-facil-con-ros2.es\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=2889"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/robotica-facil-con-ros2.es\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=2889"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}