Los formatos LYR y MXD son formatos exclusivos de ESRI, sin especificaciones públicas que permitan su uso. Este es un gran problema para las organizaciones que deseen pasar de un entorno de ESRI al mundo geoespacial abierto, pero aún así se ven limitadas por cientos de documentos MXD de ESRI existentes y estilos de capa que no pueden utilizarse fuera del ecosistema de ESRI.
Además, muchos proveedores de datos espaciales solo incluyen capas específicas de ESRI, por lo que su uso queda restringido a las herramientas de ESRI y muchos usuarios están limitados a continuar trabajando en este entorno.
Sin embargo, tenemos algunas opciones para llevar nuestros proyectos MXD de ArcGIS a QGIS. QGIS es el SIG de escritorio libre más popular y potente.
El proceso de comenzar un nuevo proyecto puede ser muy tedioso, buscar la ubicación de todas las capas, volver a colocarlas en su lugar, etc.
¿No te parece buena idea poder convertir tus proyectos MXD de ArcGIS a QGIS? A nosotros desde luego que sí.
Índice
La herramienta mxd2qgis de Allan Maungu
Existe una herramienta creada por Allan Maungu, mxd2qgis, que nos permite convertir proyectos con formato .mxd al formato .qgs de QGIS.
- Puedes descargarla aquí: https://sites.google.com/site/lumtegis/files/Mxd2Qgs.zip
Sin embargo esta herramienta es del año 2011 (!!) y solo funciona con Python 2.6.5. ¿Qué significa esto? Que si trabajas con ArcGIS 10.1, 10.2 o 10.3 olvídate, ya que es necesario instalar un programa que requiere la versión 2.6 de Python (para instalar una librería adicional), y si no existe Python 2.6, el proceso se detiene.
Por lo tanto si quieres utilizar el programa original de Allan no te garantizamos el éxito.
Nosotros hemos modificado el script original de Allan Maungu para poder realizar esta operación sin necesidad de realizar ninguna instalación.
Este script lo que hace es llevar todas las capas del MXD a QGIS en el mismo orden, con la misma proyección, escala, etc, pero ya te avisamos que no es posible trasladar la simbología ni las anoaciones. Al final del post veremos una iniciativa que sí lo hará.
¿Cómo ejecuto el script?
Descarga aquí el paquete que hemos preparado y extrae el contenido del archivo ZIP. Contiene:
- mxd2qgs.py → Es el archivo original con una leve modificación.
- z_ArcMap to Qgs.tbx → La toolbox para ejecutar de forma sencilla el script de python desde ArcMap.
Antes de nada, abre el archivo mxd2qgs.py con el bloc de notas, con Notepad++, etc y ve a las líneas 39 a 41:
#MXD DE ENTRADA Y QGS DE SALIDA mxd = arcpy.mapping.MapDocument(r"C:\temp\cities.mxd") output = r"C:\temp\cities.qgs"
La primera línea indica dónde se encuentra el .mxd que queremos convertir, modifica la ruta para indicar dónde está tu proyecto.
La segunda línea crea un nuevo proyecto .qgs de QGIS, así que debes indicar el directorio y el nombre del archivo.
Guarda los cambios.
Ahora hay que ejecutar este script.
Tenemos dos opciones:
A. Utilizar PyScripter sin necesidad de abrir ArcGIS.
Esta opción es la más cómoda si tienes PyScripter instalado y estas familiarizado con su uso, si no:
B. A través de ArcGIS
Abre un proyecto nuevo. Tenemos que ir a las ArcToolbox y crear una nueva Toolbox:
En la siguiente ventana buscamos el archivo donde hemos descomprimido «z_ArcMap to Qgs.tbx» y hacemos clic en «Open» para agregarlo a nuestra ArcToolbox.
Una vez añadida la herramienta debemos especificar dónde se encuentra el script mxd2qgs.py:
Botón derecho sobre el script > Properties > pestaña Source y especificamos la ruta del archivo .py
Ahora solo tenemos que hacer doble clic sobre el script Ecuta mxd2qgs.py
En la ventana que se abre (como la herrramienta no tiene parámetros) pincha sobre OK.
Ve a la ruta donde hayas especificado que se cree el nuevo proyecto de QGIS y allí estará.
En nuestras pruebas con proyectos sencillos no ha habido problemas.
La iniciativa de North Road
North Road ha desarrollado con éxito ingeniería inversa y ha creado herramientas personalizadas para extraer y convertir estos tipos de archivos. Estas herramientas están disponibles en el complemento de pago de QGIS «SLYR«, que está disponible para las versiones de QGIS 3.4 y posteriores.
El complemento SLYR ofrece una rica integración dentro de la aplicación QGIS y agrega funcionalidades comunes como el soporte para arrastrar y soltar directamente estilos de ESRI y los formatos LYR a la ventana de QGIS.
North Road ha estado realizando una extensa investigación y desarrollo, ofrecerá un producto que permita el uso de mxds (formatos restringidos) dentro de QGIS.
Para poder continuar con el desarrollo de la herramienta SLYR y desbloquear el uso de los formatos LYR y MXD fuera de las herramientas ESRI, North Road está llevando a cabo una campaña de financiamiento. Los patrocinadores de la campaña recibirán acceso a las herramientas a medida que se desarrollen y obtendrán acceso a los canales de soporte oficiales que cubren su uso. Al finalizar esta campaña, se lanzarán todas las herramientas y especificaciones bajo una licencia gratuita de código abierto. O dicho de otra manera, podremos llevar nuestros mxd de ArcGIS a QGIS.
Puedes leer los detalles completos de la campaña aquí, incluidos los precios para convertirse en patrocinador de un proyecto y obtener acceso a las herramientas a medida que se desarrollan.
Os animamos a contribuir para disponer de esta fantástica herramienta.
Licenciado en Geografía. Máster en Sistemas de Información Geográfica. Consultor GIS desde el año 2004. En MappingGIS desde el año 2012 para ayudarte a impulsar tu perfil GIS y diferenciarte de la competencia. Echa un vistazo a todos nuestros cursos de SIG online.
Buenas tardes,
Se ha actualizado el script para poder convertir mxd de las ultimas versiones de ArcGIS?. Si no es así, hay otras opciones?
Gracias,
Hola Pablo,
El script funciona perfectamente con ArcGIS 10.3 y 10.4 Saludos!
Y para 10.4?
Aurelio.
quisiera consultarte sobre el paso de proyectos de arcview 3.2 a qgis.
Es posible pasar los proyectos como estan armados en arcview 3.2 a qgis?
gracias
saludos
Michael
Hola,
Muchas gracias.
Me gustaría saber si existe alguna herramienta parecida para llevarme un proyecto de QGIS a ArcGIS?
Hola, buenas tardes.
Estoy tratando de usar el script que uds modificaron sin embargo en ArcGis 9.3 cuando estoy cargando la herramienta no aparece en el toolbox, es como si no la cargara… será que me pueden ayudar? gracias de antemano
Muchas gracias!.
Hay alguna versión que también importe la simbología y que permita hacer compatible los proyectos qgis con arcgis?.
Gracias y un saludo.
Lo que se me ocurre es exportar la simbología como sld e importarla después en qgis. Aunque serían dos pasos…