Skip to content

2. Mapa

yaizavalidador edited this page Jun 27, 2023 · 3 revisions

La personalización del mapa que queremos construir recae en las siguientes categorías:

  • Capas: Son los datos a mostrar y conforman el mapa que se representará. Actualmente, la API-CNIG acepta los principales orígenes de datos OGC.
  • Controles básicos: Unidades atómicas de funcionalidad que se quiere encapsular. En otras palabras, son las herramientas que incluye el mapa y que permiten trabajar con él. Por ejemplo, podemos tener un control que dibuje la escala en el mapa, uno que ofrezca una selección de mapas de fondo del mapa (TOC), o uno que vaya mostrando las coordenadas del cursor. La funcionalidad de estos controles está dividida internamente en fachada e implementación. La fachada contendrá toda la lógica independiente de la librería de mapas que se use, que se llevará al lado de la implementación.
  • Plugins: es una agrupación funcional de controles. Por ejemplo, supongamos que tenemos un control que permite modificar la geometría de una capa vectorial WFS, otro control que permite editarla alfanuméricamente, y otros controles para eliminar elementos y para grabar los cambios. Todos estos controles, aunque ofrecen funcionalidades atómicas diferentes, funcionan en grupo sobre una misma capa vectorial, por lo que se agrupan en un plugin para optimizar la gestión de la información y los elementos comunes que comparten.
    Aunque un control puede no pertenecer a ningún plugin, por lo general vamos a ubicarlo siempre en uno, aunque sea el único, ya que eso nos permite definir una metodología de desarrollo común, y sienta las bases para poder extenderlo en el futuro si es necesario. Es por ello que hablamos de desarrollo de plugins, en vez de desarrollo de controles.
  • Paneles: La API proporciona una serie de paneles que facilitan la organización de plugins y controles sobre el mapa. Es una agrupación visual de controles. Así por ejemplo, es lógico que los controles de edición WFS antes mencionados, vayan agrupados en un mismo panel. Y otro panel podría tener los controles de desplazamiento por el mapa: pan, vista anterior, vista siguiente, etc. En qué panel ubicar sus controles es algo (opcional) que puede gestionar el plugin, especialmente si va a tener un panel propio.
  • Opciones: Permiten establecer características concretas del mapa o del área a visualizar, como son el centrado en un punto, nivel de zool inicial, sistema de referencia, etc.
  • Eventos: Son disparadores que permiten al programador conocer cuándo ha ocurrido un suceso determinado, de manera que pueda actuar en consecuencia.
  • Internacionalización: Permiten establecer un idioma concreto al mapa, controles y plugins.
  • Acceso a librerías base: Permiten al programador acceder a los objetos de la librería de mapas base sobre la que se coloca la API, y manipularlos directamente.
  • Configuración: la API-CNIG proporciona unas configuraciones por defecto definidas en el fichero configuration.js.

A continuación, se muestra un diagrama donde se recoge la estructura organizativa de los plugins, paneles y controles, y cómo se relacionan unos con otros. Se toma como elemento central la figura del mapa, que es el área de trabajo y de visualización de información geográfica:

image

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

2. MAPA
2.1. Capas

 ■ 2.1.1. Fuentes
   • 2.1.1.1. Capas vectoriales
     + Vector
     + WFS
     + GeoJSON
     + KML
     + MVT
     + OGCAPIFeatures
     + MBTilesVector
     + GenericVector
   • 2.1.1.2. Capas ráster
     + WMS
     + WMTS
     + TMS
     + XYZ
     + OSM
     + MBTiles
     + GenericRaster
   • 2.1.1.3. Capas rápidas

 ■ 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

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

6. PARAMETRIZACIÓN VISUALIZADORES

7. SOLUCIÓN DE PROBLEMAS

8. PROCESO DE VERSIONADO

9. GUÍA DE DESARROLLO
  > Guía de desarrollo de plugins
  > Guía de desarrollo de visualizadores con React
  > Guía de desarrollo de componentes
  > Guía para el desarrollo de API-CNIG
  > Compilación proyecto API-CNIG

Clone this wiki locally