GenericVector - Desarrollos-IDEE/API-IDEE GitHub Wiki

GenericVector permite añadir cualquier tipo de capa vector pasando el objeto capa de la librería base como tercer parámetro.
1.- En el constructor del mapa:

const olLayer = new ol.layer.Vector({
  source: new ol.source.Vector({
    format: new ol.format.GeoJSON(),
    url: 'https://geostematicos-sigc.juntadeandalucia.es/geoserver/tematicos/ows?service=WFS&version=1.0.0&request=GetFeature&typeName=tematicos:Provincias&maxFeatures=50&outputFormat=application%2Fjson',
    strategy: ol.loadingstrategy.bbox,
  }),
});

const GenericVector = new IDEE.layer.GenericVector({}, {}, olLayer)

// Instanciando la capa
const map = IDEE.map({
            container: 'map',
            layers: [GenericVector],
        });

2.- Mediante los métodos addLayers:

const olLayer = new ol.layer.Vector({
  source: new ol.source.Vector({
    format: new ol.format.GeoJSON(),
    url: 'https://geostematicos-sigc.juntadeandalucia.es/geoserver/tematicos/ows?service=WFS&version=1.0.0&request=GetFeature&typeName=tematicos:Provincias&maxFeatures=50&outputFormat=application%2Fjson',
    strategy: ol.loadingstrategy.bbox,
  }),
});

const GenericVector = new IDEE.layer.GenericVector({}, {}, olLayer)

map.addLayers(GenericVector)

Parámetros:

  • name: nombre de la capa.
  • legend: Nombre asociado en el árbol de contenidos, si usamos uno.
  • isBase: 'true' si se quiere definir la capa como capa base, 'false' en caso contrario.
  • visibility: Indica la visibilidad de la capa.
  • styles: Estilos de la capa.
  • maxExtent: La medida en que restringe la visualización a una región específica.
  • infoEventType: Define si consultar la capa con un clic o con "hover".
  • ids: Opcional - identificadores por los que queremos filtrar los objetos geográficos.
  • cql: Opcional - Sentencia CQL para filtrar los objetos geográficos. El método setCQL(cadena_cql) refresca la capa aplicando el nuevo predicado CQL que reciba.
  • extract: Opcional Activa la consulta por clic en el objeto geográfico, por defecto verdadero.
    • Las capas GenericVector cuentan con métodos get y set para modificar el extract.
capa.extract = true; // activa consulta
capa.extract = false; // desactiva consulta
console.log(capa.extract); // muestra el estado de la propiedad
  • template: Opcional Plantilla que se mostrará al consultar un objeto geográfico.
    • Las capas GenericVector cuentan con métodos get y set para modificar el template.
capa.template = `<div>My custom popup</div>`; // especifica la plantilla
console.log(capa.template); // muestra el estado de la propiedad
  • 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.

    • styles: Estilos de la capa.
    • sldBody: Parámetros "ol.source.ImageWMS".
    • minZoom: Zoom mínimo aplicable a la capa.
    • maxZoom: Zoom máximo aplicable a la capa.
    • queryable: Indica si la capa es consultable.
    • crossOrigin: Atributo crossOrigin para las imágenes cargadas.
    • minScale: Escala mínima.
    • maxScale: Escala máxima.
    • minResolution: Resolución mínima.
    • maxResolution: Resolución máxima.
    • opacity: Opacidad de capa, por defecto 1.

Ejemplo:

const olLayer = new ol.layer.Vector({
  source: new ol.source.Vector({
    format: new ol.format.GeoJSON(),
    url: 'https://geostematicos-sigc.juntadeandalucia.es/geoserver/tematicos/ows?service=WFS&version=1.0.0&request=GetFeature&typeName=tematicos:Provincias&maxFeatures=50&outputFormat=application%2Fjson',
    strategy: ol.loadingstrategy.bbox,
  }),
});


const generic = new IDEE.layer.GenericVector({
// name: 'Nombre de prueba',
// ids: '1,2',
// cql: "nombre LIKE '%ada%'",
// extract: true,
// infoEventType: 'hover',
// maxExtent: [-952551.7366869409, 4498177.065457279, -669276.1098620776, 4562995.6654431075],
// legend: 'capaGenericVector',
// maxExtent: [-952551.7366869409, 4498177.065457279, -669276.1098620776, 4562995.6654431075],
}, {
// visibility: false,
// opacity: 0.5,
// minZoom: 5,
// maxZoom: 7,
// minScale: 2000000,
// maxScale: 7000000,
// minResolution: 705.5551745557614,
// maxResolution: 2469.443110945165,
}, olLayer);

Ejemplos:

⚠️ **GitHub.com Fallback** ⚠️