Skip to content

2.1.1.7. GeoPackage

gdtel-cnig-develop edited this page Jul 31, 2025 · 4 revisions

El formato Geopackage permite agrupar múltiples capas, tanto vectoriales como ráster, en un contenedor SQLite.

// Creación de una capa GeoPackage sin indicar options
fetch('https://componentes.idee.es/estaticos/Datos/gpkg/rivers.gpkg').then((data) => {
  const gpkg = new IDEE.layer.GeoPackage(data);
  mapa.addGeoPackage(gpkg);
});
// Creación de una capa GeoPackage indicando options
fetch('https://componentes.idee.es/estaticos/Datos/gpkg/rivers.gpkg').then((data) => {
  const gpkg = new IDEE.layer.GeoPackage(data, {
    rivers_tiles: {
      name: 'Geopackage Raster',
      legend: 'Rivers Tiles',
    },
    rivers: {
      name: 'GeoPackage GeoJSON',
      legend: 'GeoPackage Vector',
    },
  });
  mapa.addGeoPackage(gpkg);
});

Donde:

  • data: Fichero que contiene la información de geopackage (.gpkg). Puede ser Response | File | Uint8Array
  • options: (son opcionales). Opciones para pasarle a las diferentes capas que contiene GeoPackage. Si son vectoriales se instancian con IDEE.layer.GeoJSON, si son ráster se usa la clase IDEE.layer.GeoPackageTile.
    • id_capa_vectorial_en_geopackage:
      • attribution: Atribución de la capa.
        • name. Nombre de la atribución
        • description. Descripción de la atribución.
        • url. URL de la atribución.
        • contentAttributions. Atribuciones por objetos geográficos, por defecto vacío.
        • contentType. Tipo de url de “contentAttributions” (KML o GeoJSON).
      • name: Nombre de la capa.
      • legend: Nombre que aparece en el árbol de contenidos.
      • isBase: 'true' si se quiere definir la capa como capa base, 'false' en caso contrario.
      • maxExtent: Restringe la visualización a una región específica.
      • extract: Activa la consulta por clic en el objeto geográfico, por defecto verdadero
      • infoEventType: Parametriza el método de activación del popup para obtener la información de una feature ('click' / 'hover'), por defecto 'click'.
      • template: Plantilla que se mostrará al consultar un objeto geográfico.
    • id_capa_raster_en_geopackage:
      • attribution: Atribución de la capa.
        • name. Nombre de la atribución
        • description. Descripción de la atribución.
        • url. URL de la atribución.
        • contentAttributions. Atribuciones por objetos geográficos, por defecto vacío.
        • contentType. Tipo de url de “contentAttributions” (KML o GeoJSON).
      • name: Nombre de la capa.
      • legend: Nombre que aparece en el árbol de contenidos.
      • isBase: 'true' si se quiere definir la capa como capa base, 'false' en caso contrario.
      • maxExtent: Restringe la visualización a una región específica.
      • displayInLayerSwitcher: Indica si la capa se muestra en el selector de capas.
      • tileLoadFunction: Función de carga de la tesela.
      • opacity: Opacidad de capa, por defecto 1.
      • visibility: Indica si la capa es visible o no.
      • tileGridMaxZoom: Zoom máximo de cuadrícula de la tesela.
      • minZoom: Zoom mínimo aplicable a la capa.
      • maxZoom: Zoom máximo aplicable a la capa.

⚠️ Sólo se permite definir los parámetros del primer objeto de cada tipo de capa contenida en el GeoPackage.

Métodos del mapa: addGeoPackage y removeGeoPackage.

Desde la api se proporciona también los siguientes métodos para trabajar con ellas:

// Obtener un array con las capas incluidas en el GeoPackage.
let gpkg_layers = gpkg.getLayers();

// Obtener la capa con el id proporcionado del GeoPackage.
let gpkg_layers = gpkg.getLayer(id_capa_raster_en_geopackage/id_capa_vectorial_en_geopackage);

Los métodos removeLayers y removeLayer permiten gestionar las capas incluidas en el GeoPackage.

1.INICIO
   1.1. Componentes de la API-IDEE
   1.2. Documentación y Puntos de acceso
   1.3. Primeros pasos
   1.4. Diagrama API IDEE

2. MAPA
2.1. Capas

 ■ 2.1.1. Fuentes
   • 2.1.1.1. Capas vectoriales
     + Vector
     + WFS
     + GeoJSON
     + KML
     + MVT
     + OGCAPIFeatures
     + MBTilesVector
     + GenericVector
     + MapLibre
   • 2.1.1.2. Capas ráster
     + WMS
     + WMC
     + WMTS
     + TMS
     + XYZ
     + OSM
     + MBTiles
     + GenericRaster
     + GeoTIFF
     + GeoPackageTile
   • 2.1.1.3. Capas 3D
     + Terreno
     + 3DTiles
       + info 3DTiles
   • 2.1.1.4. Capas rápidas
   • 2.1.1.5. Grupo de capas
   • 2.1.1.6. Secciones
   • 2.1.1.7. GeoPackage
   • 2.1.1.8. Capas externas

 ■ 2.1.2. Simbolización
   • 2.1.2.1. Genérica
     + Puntos
     + Líneas
     + Polígonos
   • 2.1.2.2. Básica
     + Puntos
     + Líneas
     + Polígonos
   • 2.1.2.3. Avanzada
     + Coropletas
     + Proporcional
     + Categorías
     + Estadísticos
     + Mapas de Calor
     + Cluster
     + Línea de flujo
     + Composición

 ■ 2.1.3. Filtros

2.3.-Plugins

  > Creación de plugin en cliente

  » Tutorial de creación de un plugin

2.4. Paneles

  » Creación de panel desde cero sin controles

  » Tutorial Panel de un único control

  » Tutorial Panel de un único control con más de un botón

  » Tutorial Panel con más de un control

2.5. Eventos

  » Gestión de eventos
  » Gestión de eventos en controles personalizados

    2.6. Internacionalización

    2.7. Configuración

    2.8. Acceso librerías base

3. UTILIDADES

4. PROXY

5. API REST
 5.1. Parametrización API-REST
 5.2. Base de Datos API-REST
 5.3. API REST Actions
 5.4. Servicio de correos electrónicos
 5.5. Capas rápidas
 5.6. Parametrización API-REST plugins externos

6. PARAMETRIZACIÓN VISUALIZADORES

7. SOLUCIÓN DE PROBLEMAS

8. PROCESO DE VERSIONADO

9. GUÍA DE DESARROLLO
  > Guía para colaborar en el repositorio
  > Guía para el desarrollo de API-IDEE
  > Guía de test de API-IDEE
  » Tutorial desarrollo del núcleo de API-IDEE - (Cliente)
  > Guía de desarrollo de componentes
  » Tutorial desarrollo del núcleo de API-IDEE - (Servidor)
  > Guía de desarrollo de plugins
  » Tutorial desarrollo de plugins ya creados
  » Tutorial desarrollo de nuevos plugins
  > Guía de desarrollo de visualizadores con React

  > Compilación proyecto API-IDEE

Clone this wiki locally