-
Notifications
You must be signed in to change notification settings - Fork 15
2.3. Plugins
Los plugins o componentes son funcionalidades que ofrecen utilidades específicas que, a diferencia de los controles básicos, suelen usarse en escenarios concretos, por lo que se separan del core o núcleo principal de la API para no penalizar con su descarga a quien no los necesite. Por esa razón, cada plugin tiene sus propios ficheros de recursos, que deben importarse junto a los del core, tal como se indica en la sección de primeros pasos de esta wiki.
A continuación, se muestra un ejemplo de ficheros a añadir para incluir el plugin information. Este plugin permite hacer la petición GetFeatureInfo sobre las capas que sean consultables. Estas librerías se añaden a las del core o núcleo principal de la API:
<!DOCTYPE html>
<html>
<head>
<!-- fichero estilos -->
<!-- Estilo principal de la API-CORE -->
<link href="https://componentes.cnig.es/api-core/assets/css/apiign.ol.min.css" rel="stylesheet" />
<!-- Estilo para el plugin information-->
<link href="https://componentes.cnig.es/api-core/plugins/information/information.ol.min.css" rel="stylesheet" />
<!-- ficheros javascript -->
<!-- Javascript API-CORE -->
<script type="text/javascript" src="https://componentes.cnig.es/api-core/js/apiign.ol.min.js"></script>
<script type="text/javascript" src="https://componentes.cnig.es/api-core/js/configuration.js"></script>
<!-- Javascript plugin information-->
<script type="text/javascript"
src="https://componentes.cnig.es/api-core/plugins/information/information.ol.min.js"></script>
<!-- estilo básico -->
<style>
html,
body {
margin: 0;
padding: 0;
height: 100%;
}
</style>
</head>
<body>
<div id="map"></div>
<script type="text/javascript">
// Creamos mapa
mapajs = M.map({
container: "map" //id del contenedor del mapa
});
// Una vez importado los ficheros necesarios podemos crear el plugin y añadirlo al mapa:
const mp = new M.plugin.Information({
position: 'BL',
tooltip: 'Consultar capas',
format: 'html',
featureCount: 5,
buffer: 5,
opened: 'one',
});
mapajs.addPlugin(mp);
</script>
</body>
</html>
Podemos obtener todos los plugins añadidos al mapa con el método getPlugins():
mapajs.getPlugins();
Y podemos eliminar todos/algunos plugins del mapa con el método removePlugins():
mapajs.removePlugins(mapajs.getPlugins());
El conjunto de plugins que extiende el core de la API CNIG pueden verse en su página de test, donde además es posible observar y cambiar la parametrización.
Para conocer con mas detalle los parámetros y configuración de los plugins puede consultar su documentación a continuación:
Plugin | Descripción |
---|---|
backimglayer | Plugin que permite la elección de capas de fondo mediante imágenes o thumbnails. |
buffer | Plugin que permite el cálculo de áreas de influencia sobre geometrías que se van dibujando sobre la vista. |
comparators | Plugin que permite hacer comparaciones de capas en un visualizador. |
contactlink | Plugin que sirve como punto de conexión entre visualizadores. Provee de enlaces a sitios web, redes sociales y correos institucionales. Esta extensión contiene los enlaces a "descargas CNIG", "comparador PNOA", "visualizador 3D" y "Fototeca". |
help | Plugin que obtiene la ayuda de cada herramienta (plugins y controles), si la tiene disponible), y la muestra en una página HTML. |
incicarto | Plugin que permite la identificación de incidencias sobre la cartografía. |
infocoordinates | Plugin que muestra las coordenadas de los puntos que se van señalando en el mapa. |
information | Plugin que muestra información GetFeatureInfo mediante activación de plugin. |
layerswitcher | Plugin que permite gestionar y cargar capas, configurar opacidad, estilos, visibilidad y consulta de metadatos. |
locator | Plugin que ofrece diferentes herramientas de localización. |
measurebar | Herramienta de medición de áreas y distancias. |
modal | Plugin que muestra información sobre el visor y acceso al manual de uso. |
mousesrs | Muestra las coordenadas del ratón sobre el mapa y sistema de referencia. |
overviewmap | Mapa de localización sobre la vista. |
printviewmanagement | Plugin que permite la impresión del mapa. |
queryattributes | Plugin aplicar filtros sobre las capas de un mapa y visualizar de forma gráfica las features que cumplen los filtros. Permite guardar consultas, combinarlas y exportar los resultados de estas. |
rescale | Utilidad que permite hacer zoom a partir de valores introducidos por el usuario. |
selectionzoom | Plugin que permite la elección de cada de fondo mediante previsualización de las posibles capas. |
sharemap | Habilita la compartición de la visión actual del mapa. |
stylemanager | Permite la edición de estilos en las capas vectoriales. |
storymap | Muestra una historia en forma de carrusel. Esta compuesta por diferentes steps en los cuales se ejecurán animaciones preconfiguradas. |
timeline | Plugin de línea del tiempo. |
topographicprofile | Muestra la topografía de una zona marcada por el usuario. |
vectorsmanagement | Plugin que permite el dibujo y edición de geometrías sobre un mapa, así como su descarga. |
viewmanagement | Plugin que permite utilizar diferentes herramientas de zoom: centrar el mapa en las vistas indicadas, zoom con una caja, navegar entre las vistas visitadas y acercar o alejar a una vista del mapa. |
En la carpeta principal de cada uno existe un fichero README.md que lo documenta: descripción, ficheros de recursos y ejemplos.
Plugin | Descripción |
---|---|
attributions | Habilita la visualización de atribuciones de las capas del mapa. |
predefinedzoom | Centra el mapa en la/s vista/s indicada/s por parámetro. |
viewhistory | Permite navegar entre las vistas visitadas del mapa (hacia adelante y atrás). |
zoomextent | Permite realizar zoom con una caja sobre el mapa. |
zoompanel | Ofrece diferentes herramientas de zoom. |
ignsearch | Plugin que permite la búsqueda de Direcciones postales (Geocoder de Cartociudad) y Topónimos (Nomenclátor del IGN). |
ignsearchlocator | Plugin que permite la búsqueda de Direcciones postales y Topónimos. |
xylocator | Herramienta para localizar unas coordenadas sobre el mapa, dadas en un sistema de referencia determinado. |
infocatastro | Plugin que muestra la referencia catastral para un punto y provee de enlace a la información de la DGC. |
fulltoc | Plugin que permite gestionar y cargar wms y wmts y configurar opacidad, estilos, visibilidad y consulta de metadatos. |
toc | Tabla de contenidos simple para la activación/desactivación de la visualización de capas. |
transparency | Plugin que permite aplicar un efecto de transparencia a la capa seleccionada. |
lyrcompare | Plugin que permite comparar varias capas sobre una cartografía base. |
mirrorpanel | Plugin que permite comparar varias capas dividiendo la pantalla en varias partes. |
comparepanel | Plugin recopila los comparadores. |
popup | Plugin que muestra información sobre el visor y acceso al manual de uso. |
georefimage | Plugin que permite la descarga de la imagen georeferenciada que se muestra en pantalla. |
georefimage2 | Plugin que permite la descarga de la imagen georeferenciada que se muestra en pantalla, de los servicios Ráster y de PNOA de forma directa. |
printermap | Plugin que permite imprimir el mapa mostrado. |
geometrydraw | Plugin que permite el dibujo y edición de geometrías sobre un mapa, así como su descarga. |
selectiondraw | Plugin que permite dibujar geometrías y obtenerlas al terminar para ser mostradas o para lanzar filtros espaciales. |
vectors | Plugin que permite el dibujo y edición de geometrías sobre un mapa, así como su descarga. |
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