WMTS - Desarrollos-IDEE/API-IDEE GitHub Wiki
WMTS (Web IDEEap Tile Service) es un estándar OGC para servir información geográfica en forma de teselas pregeneradas a unas resoluciones específicas. La API-IDEE permite visualizar este tipo de servicios.
1.- Añadiéndolas en el constructor del mapa. Ejemplo en modo cadena:
const mapajs = IDEE.map({
container: "map",
layers: ["WMTS*http://www.ign.es/wmts/pnoa-ma?*OI.OrthoimageCoverage*EPSG:25830*PNOA"],
center: [363063, 4150610],
zoom: '4',
controls: ['backgroundlayers'],
projection: 'EPSG:3857*m',
});
2.- Con el método correspondiente (addWMTS/addLayers). Ejemplo en modo objeto:
const layer = new IDEE.layer.WMTS({
url: "http://www.ign.es/wmts/pnoa-ma",
name: "OI.OrthoimageCoverage",
matrixSet: "EPSG:25830",
legend: "PNOA"
},
{
format: 'image/png'
});
mapajs.addWMTS(layer);
const ocupacionSuelo = new IDEE.layer.WMTS({
url: 'https://wmts-mapa-lidar.idee.es/lidar',
name: 'EL.GridCoverageDSM',
legend: 'Modelo Digital de Superficies LiDAR',
matrixSet: 'GoogleMapsCompatible',
}, {
visibility: true,
});
mapajs.addLayers(ocupacionSuelo);
Donde:
-
url: Url del servicio WMTS.
-
name: Identifier de la Layer en el Capabilities del servicio.
-
matrixSet: La matriz seleccionada de las definidas en el Capabilities del servicio.
-
legend: Nombre que mostrará la capa en el árbol de contenido, si existe.
-
isBase: 'true' si se quiere definir la capa como capa base, 'false' en caso contrario.
-
useCapabilities: Define si se utilizará el capabilities para generar la capa.
-
maxExtent: Restringe la visibilidad de la capa a una extensión.
-
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.
- maxZoom: Zoom máximo aplicable a la capa.
- minZoom: Zoom mínimo aplicable a la capa.
- minScale: Escala mínima.
- maxScale: Escala máxima.
- minResolution: Resolucción mínima.
- maxResolution: Resolucción máxima.
- format: Formato. El formato por defecto es png.
- crossOrigin: Atributo crossOrigin para las imágenes cargadas.
- 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 (el código se envía directamente a la librería base para ejecutar la funcionalidad).
Ejemplo vendorOptions:
new IDEE.layer.WMTS({}, {
minZoom: 5
}, {
source: new ol.source.WMTS({
urls: ['https://servicios.idee.es/wmts/ocupacion-suelo'],
layer: 'LC.LandCoverSurfaces',
matrixSet: 'GoogleMapsCompatible',
format: 'image/png',
projection: ol.proj.get('EPSG:3857'),
crossOrigin: 'anonymus',
tileGrid: new ol.tilegrid.WMTS({
origin: [-20037508.34, 20037508],
resolutions: [156543.03390625, 78271.516953125, 39135.7584765625, 19567.8792382812, 9783.93961914062, 4891.96980957031, 2445.98490478515, 1222.99245239257, 611.496226196289, 305.748113098144, 152.874056549072, 76.4370282745361, 38.218514137268, 19.109257068634, 9.55462853431701, 4.7773142671585, 2.38865713357925, 1.19432856678962, 0.59716428339481, 0.298582141697405, 0.1492910708487025],
matrixIds: ['0', '1', '2', '3', '4', '5', '6', '7', '8', '9', '10', '11', '12', '13', '14', '15', '16', '17', '18', '19', '20'],
}),
}),
tileLoadFunction: <funcion>,
});
const layer = new IDEE.layer.WMTS({
url: "http://www.ign.es/wmts/pnoa-ma",
name: "OI.OrthoimageCoverage",
matrixSet: "EPSG:25830",
legend: "PNOA"
}, {
format: 'image/png' // formato de la imagen
}, {
opacity: 0.5 // aplica opacidad a la capa
});
Ejemplo funcional