Skip to content
gdtel-cnig-develop edited this page Jun 5, 2023 · 32 revisions

Las capas de tipo Vector Tile ofrecen determinadas ventajas en algunos escenarios, por su bajo peso y rápida carga, ya que se sirven en forma de teselas que contienen la información vectorial de la zona que delimitan.

Para visualizar una capa MVT servida en formato pbf:

// Capa MVT
let mvt = new M.layer.MVT({
  url: 'https://{$URL_SERVICIO}@pbf/{z}/{x}/{-y}.pbf',
  name: 'Capa MVT',
  projection: 'EPSG:3857',
});

mapajs.addLayers(mvt);

Donde:

  • url: url del servicio que devuelve los tiles vectoriales.
  • name: nombre de la capa, debe ser único en el mapa.
  • projection: SRC usado por la capa.
  • opacity: opacidad de la capa (0-1), por defecto 1.
  • visibility: 'true' si la capa es visible, 'false' si queremos que no lo sea. En este caso la capa sería detectado por los plugins de tablas de contenidos y aparecería como no visible.
  • mode: Modo de renderizado de la capa. Valores posibles: 'renderizar' | 'característica'.
  • extract: opcional Activa la consulta por click en el feature, por defecto false.
    • Si se desea personalizar un manejador propio para mostrar un popup o label al hacer click en alguno de los features, hay que establecer el atributo extract a true, para que no sólo se active nuestro manejador.

    • Las capas MVT cuenta con métedos GET y SET para modificar el extract.

  • options: Estas opciones se mandarán a la implementación de la capa.
    • style: Define el estilo de la capa.
    • minZoom. Zoom mínimo aplicable a la capa.
    • maxZoom. Zoom máximo aplicable a la capa.
    • visibility. Define si la capa es visible o no. Verdadero por defecto.
    • displayInLayerSwitcher. Indica si la capa se muestra en el selector de capas.
    • opacity. Opacidad de capa, por defecto 1.
  • vendorOptions: Opciones para la biblioteca base. Ejemplo vendorOptions:
import OLSourceVector from 'ol/source/Vector';
{
 opacity: 0.1,
 source: new OLSourceVector({
   attributions: 'mvt',
   ...
 })
}

Ejemplo

Servicio teselado vectorial

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
     + MapLibre
   • 2.1.1.2. Capas ráster
     + WMS
     + WMTS
     + TMS
     + XYZ
     + OSM
     + MBTiles
     + GenericRaster
     + GeoTIFF
   • 2.1.1.3. Capas rápidas
   • 2.1.1.4. Grupo de capas

 ■ 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

6. PARAMETRIZACIÓN VISUALIZADORES

7. SOLUCIÓN DE PROBLEMAS

8. PROCESO DE VERSIONADO

9. GUÍA DE DESARROLLO
  > Guía para el desarrollo de API-CNIG
  » Tutorial desarrollo del núcleo de API-CNIG - (Cliente)
  > Guía de desarrollo de componentes
  » Tutorial desarrollo del núcleo de API-CNIG - (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-CNIG

Clone this wiki locally