-
Notifications
You must be signed in to change notification settings - Fork 15
TMS
Las capas TMS (Tile Map Service) son servicios de información geográfica en forma de teselas muy similares a las capas XYZ. El protocolo TMS de OSGeo permite que las teselas usen índices numéricos y aporten metadatos para la configuración e investigación. Las capas TMS presentan la siguiente estructura:
https://tms-ign-base.idee.es/1.0.0/IGNBaseTodo/{z}/{x}/{-y}.jpeg
- {z} especifica el nivel de zoom.
- {x} el número de columna.
- {-y} el número de fila.
Se pueden construir de varias maneras.
1.- Añadiéndolas en el constructor del mapa. Modo cadena:
const mapa = M.map({
container: 'map',
getfeatureinfo: 'plain',
projection: 'EPSG:3857*m',
layers: ["TMS*TMSBaseIGN*https://tms-ign-base.idee.es/1.0.0/IGNBaseTodo/{z}/{x}/{-y}.jpeg*true*false"],
zoom: 7,
center: [-491123.5838198825, 4868765.072772329],
});
2.- O añadiéndolas con el método correspondiente (addTMS/addLayers). Ejemplo en modo objeto:
const tms = new M.layer.TMS({
url: 'https://tms-ign-base.idee.es/1.0.0/IGNBaseTodo/{z}/{x}/{-y}.jpeg',
name: 'TMSBaseIGN',
visibility: true,
});
mapa.addTMS(tms);
Donde:
-
url: Url del servicio TMS.
-
transparent: 'false' si es una capa base, 'true' en caso contrario. Parámetro obsoleto, se recomienda usar el parámetro isBase
-
isBase: 'true' si se quiere definir la capa como capa base, 'false' en caso contrario.
-
maxExtent: La medida en que restringe la visualización a una región específica, [x.min, y.min, x.max, y.max].
-
name: Nombre de la capa. En este caso, a diferencia de los servicios WMS o WMTS, no es el nombre de la capa del servicio.
-
legend: Indica el nombre que queremos que aparezca en el selector de capas, si lo hay.
-
visibility: Indica si la capa estará por defecto visible o no.
-
displayInLayerSwitcher: Indica si la capa se muestra en el selector de capas.
-
tileGridMaxZoom: Zoom máximo de cuadrícula de mosaico. (Sobrescribe minZoom y maxZoom)
-
tileSize: Tamaño de la tesela. Por defecto 256.
-
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).
-
options: Estas opciones se mandarán a la implementación de la capa.
- opacity: Opacidad de capa, por defecto 1.
- minZoom: Zoom mínimo aplicable a la capa.
- maxZoom: Zoom máximo aplicable a la capa.
- crossOrigin: Atributo crossOrigin para las imágenes cargadas.
-
vendorOptions: Opciones para la biblioteca base (el código se envía directamente a la librería base para ejecutar la funcionalidad).
Ejemplo vendorOptions:
new M.layer.TMS({}, {
minZoom: 5,
}, {
source: new ol.source.XYZ({
projection: 'EPSG:3857',
url: 'https://tms-ign-base.ign.es/1.0.0/IGNBaseTodo/{z}/{x}/{-y}.jpeg',
tileSize: 256,
crossOrigin: 'anonymus',
}),
});
const layer = new M.layer.TMS({
url: 'https://tms-ign-base.idee.es/1.0.0/IGNBaseTodo/{z}/{x}/{-y}.jpeg',
name: 'TMSBaseIGN',
visibility: true,
transparent: true,
}, {
displayInLayerSwitcher: false, // no muestra la capa en el TOC
minZoom: 5 // zoom mínimo aplicable a la capa.
}, {
opacity: 0.5 // aplica opacidad a la capa
});
Otros servicios TMS del IGN son:
Servicio del Mapa: https://tms-mapa-raster.ign.es/1.0.0/mapa-raster/{z}/{x}/{-y}.jpeg
Servicio del PNOA: https://tms-pnoa-ma.ign.es/1.0.0/pnoa-ma/{z}/{x}/{-y}.jpeg
Ejemplos funcionales
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.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.4. Paneles
» Creación de panel desde cero sin controles
» Tutorial Panel de un único control
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
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