Si hace unas semanas analizamos el plugin qgis2leaf, en esta ocasión Víctor Olaya ha desarrollado un plugin con una funcionalidad similar para OpenLayers 3.
El plugin realmente no se denomina QGIS to OpenLayers 3, sino Export to openLayers 3 y convierte proyectos de QGIS en mapas web de OpenLayers 3.
Este plugin ha sido reemplazado por qgis2web, un plugin que exporta los proyectos a mapas web de OpenLayers 3 o Leaflet.
Incluye las siguientes características:
- Vista previa integrada en la ventana de configuración.
- Soporte de capas raster y vectoriales.
- Soporte para capas WMS/WFS.
- Soporta grupos de QGIS, que se replican en el mapa de OL3.
- Exportación de simbología, incluyendo:
- Estilos básicos de puntos, líneas y polígonos.
- Iconos SVG para marcadores de puntos.
- Etiquetado.
- Visibilidad dependiente de la escala.
- Simbología multicapa.
- Transparencia
- Basado en plantillas.
- Reducción automatica del tamaño de los archivos de salida GeoJSON y elimina los atributos no utilizados.
- Añade una leyenda de capas.
- Añade una lista de capas.
- Añade una barra de escala.
- Añade una ventana emergente (popup) con información de las capas seleccionadas, basadas en un determinado campo, al pasar por encima o al hacer clic.
- Añade la función de resaltado de objetos geográficos al pasar el puntero del ratón sobre ellos.
¿Cómo se instala?
1. Abrimos QGIS.
2. Vamos al menú superior Complementos > Administrar e instalar complementos…
3. Escribimos en la caja de búsqueda «openlayers»
Pinchamos en el botón Instalar Complemento.
¿Cómo se usa el plugin Export to OpenLayers 3?
En primer lugar debemos creamos una composición de mapa, asignamos la simbología a las capas y activamos el complemento.
Para activarlo debemos ir al menú superior Complementos > Export to openLayers > Create OpenLayers map.
Al pinchar sobre Create OpenLayers map se abre la ventana principal del plugin:
En la parte izquierda se encuentra la lista de los parámetros que definen cómo se crea el mapa OL3.
- La mitad superior contiene la lista de capas a incluir.
- La parte inferior contiene la configuración para ajustar el mapa web OL3 resultante.
Opciones de configuración
La lista de capas contiene los siguientes tipos:
- Capas vectoriales. Se exportan en formato geoJSON y son reproyectadas a la proyección por defecto del mapa OL3 (EPSG:3857)
- Capas raster. Se exportan a un fichero jpeg y son reprroyectadas la proyección por defecto de OL3 (EPSG:3857).
- Capas WMS. Son añadidas al mapa como están en QGIS. El servicio debe soportan la proyección EPSG:3857.
- Grupos: Los grupos de qGIS se añadirán al mapa tal cual y ne podrán separan en el mapa de ol3.
Algunas consideraciones:
Por defecto todas las capas del proyecto de QGIS se añadirán al mapa OL3. Se puede desmarcar la casilla correspondiente.
Todas las capas y los grupos tienen el campo Visible activado por defecto. Si esta casilla está activada, se agregará al mapa OL3, pero no será visible al abrirla. La capa puede hacerse visible en el mapa OL3 habilitándolo en el panel de lista de capas.
Los siguientes ajustes están disponibles para configurar cómo se crea el mapa OL3:
- Data Export. Estos parámetros controlan cómo se crean los archivos GeoJSON a partir de nuestras capas vectoriales QGIS.
- Scale Zoom. Controla la extensión del mapa, el nivel de zoom máximo y mínimo, etc
- Appearance. La apariencia del mapa OL3. Incluye opciones como incluir una capa base, resaltado de objetos, lista de capas, barra de escala, ventana emergente (popup) o resaltado de objetos geográficos al pasar el puntero del ratón sobre ellos.
Una vez configuradas todas las opciones podemos previsualizar el mapa resultado en el panel de la derecha de la ventana, para ello debemos hacer clic en el botón inferior Update preview y a continuación Open in External browser. Se abrirá nuestro mapa de ol3 en una nueva ventana.
Para guardar los resultados en una carpeta hacemos clic en el botón Export as OpenLayers 3…
La estructura que se crea contiene el archivo index.html que contiene el código necesario para crea el mapa de ol3 y tres carpetas:
- layers: contiene las capas en formato geoJSON
- resources: contiene las librerías necesarias para crear el mapa (tanto los archivos JavaScript, como los CSS. Además incluye la librería Boundless.js necesaria para crear los popups y el control de la lista de capas.
- styles: contiene el estilo de nuestras capas.
Si quieres exportar tus proyectos de QGIS a un mapa web de Leaflet te aconsejamos que eches un vistazo a este post: qgis2leaf: Exporta un proyecto de QGIS a un visor web de Leaflet.
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.
Es posible exportar con OpenLayers 3 o qgis2leaf las propiedades de las capas?
Hola Jordi,
En teoría estos dos plugins convierten las capas en archivos geojson. Estos archivos ya tienen información alafanumérica asociada que puedes consultar. Saludos!
Hola,
Muy interesante, como siempre, tus artículos. He estado utilizando este complemento y la verdad que siempre me había funcionado correctamente. Sin embargo en esta ocasión quería utilizarlo para exportar capas WMS y no hay manera de que se visualicen. He visto que es necesario que soporten la proyección 3857. En el caso por ejemplo del catastro según su documentación no soporta esa proyección. Podría solucionarlo de alguna manera????
Muchas Gracias por ofrecernos tus conocimientos.
Un saludo
Hola Pablo, en el caso del catastro español, la petición GetCapabilities (http://ovc.catastro.meh.es/Cartografia/WMS/ServidorWMS.aspx?REQUEST=GetCapabilities&SERVICE=WMS) nos informa que sus capas si soportan esa proyección, pero es complicado. Yo te aconsejo editar el código del script y añadir directamente el WMS utilizando la clase ol.layer.Tile:
var catastro = new ol.layer.Tile({
source: new ol.source.TileWMS({
url: ‘http://ovc.catastro.meh.es/Cartografia/WMS/ServidorWMS.aspx’,
params: {
‘LAYERS’: ‘Catastro’,
‘SRS’: ‘EPSG:23030’
}
})
});
Saludos!
Hola Aurelio,
Antes que nada felicitarte por el post, muy bueno.
He estado probando el exportar un proyecto a Openlayer, me aparecen las capas (poligonos), pero en mi proyecto en qgis, las tengo sin relleno, solo con borde y en openlayers me aparecen con un relleno en negro, es posible modificar esto directamente con esta herramienta, para que solo me aparezca el borde y que se pueda visualizar el mapa base?
Muchas Gracias
Saludos
Hola Patricia,
Si el resultado en tus polígonos no es el esperado, quizá lo más fácil sea ir directamente a la carpeta styles que se crea en tu proyecto, abrir el archivo de tu capa de polígonos con extensión js y buscar la función de estilo eliminando dentro de la clase ol.style.Style la propiedad ol.style.Fill. A efectos prácticos consiste en eliminar la línea fill: new ol.style.Fill({color: «rgba(241,244,199,1.0)»}) de esta manera te eliminará el relleno.
Saludos!
Buen día, al pre visualizar el mapa de alguna de mis capas no me aparecen todos los atributos cuando le doy un clic sobre algún elemento.
¿me puedes indicar a que podría deberse?
Ya lo arregle, había que deshabilitar la casilla de «Delete unused fields» para que me mostrara todos los atributos. Saludos.
Hay forma de subir esto a un servidor, q no solo se pueda visualizar localmente?
Por supuesto, tienes 5 opciones para crear una arquitectura webmapping en un servidor. Saludos!
Hola Aurelio. He estado probando este plugin que me interesa bastante y el resultado con capas shapes sin más es bastante bueno, pero en cuanto le pongo como base un mapa raster (un GeoTIFF por ejemplo) o cualquier servicio WMS de los que he probado el plugin me falla y el mapa me aparece en blanco en la ventana del explorador (a pesar de que parece que genera el index.html y demás). Ya he leído que el wms debe soportar el EPSG 3857 pero creo que ni por esas; y tampoco con las imágenes raster… Será que el plugin es experimental?? la verdad es que continuamente sale ventana de error de Python (incluso cuando lo hace bien). Muchas gracias.
Hola Javier,
Puede ser por el tamaño de los raster, no creo que tenga que ver con las proyecciones (si el servicio WMS soporta el EPSG 3857)..
Al ser experimental la ventana de error de Python puede salir ocasionalmente pero no debería ser la norma.
De todos modos puedes abrir una incidencia en la web del proyecto:
https://github.com/volaya/qgis-ol3/issues
Los creadores del complemento te ayudarán mejor que yo.
Saludos!