control

Descripción

Espacio de nombres de los controles de la interfaz de usuario.

Definiciones de tipos


CadastralSearchOptions

Descripción

Opciones de configuración del origen de datos de la búsqueda de parcelas catastrales.

Propiedades
Nombre Type Atributos Valor por defecto Descripción
featurePrefix string

Prefijo del nombre de la capa o capas a definir en la propiedad featureType. En caso de ser un WFS de GeoServer, se trata del nombre del espacio de trabajo (workspace).

featureType Array.<string>

Colección con el nombre de la capa o capas a consultar. Es posible indicar más de una capa si todas ellas cuentan con los campos definidos en queryProperties.

geometryName string

Nombre del campo de la geometría de la parcela catastral.

outputFormat string <optional>
SITNA.Consts.format.JSON

Tipo de formato en el cual obtener los datos del servicio WFS. Valores admitidos: SITNA.Consts.format.JSON, SITNA.Consts.format.GML3, SITNA.Consts.format.GML32 o SITNA.Consts.format.GML.

municipality CadastralSearchOptionsExt

Definición de la fuente de datos para la búsqueda de parcela por nombre de municipio en lugar de por código del mismo.

queryProperties SearchQueryPropertyOptions

Definición de los campos por los que filtrar la búsqueda de parcelas.

En este tipo de búsqueda es obligatorio dar un valor a las siguientes propiedades:

  • firstQueryWord: se indicará el campo o campos en los que buscar el código de municipio.
  • secondQueryWord: se indicará el campo o campos en los que buscar el polígono.
  • thirdQueryWord: se indicará el campo o campos en los que buscar la parcela.
styles Array.<SITNA.layer.StyleOptions>

Colección de objetos de configuración de estilo. La relación entre capa y estilo se hace mediante el índice en la colección en featureType y en styles, por tanto, deberá haber tantas instancias como capas definidas en featureType.

No está disponible cluster.

suggestionListHead SearchSuggestionHeaderOptions

Configuración de la cabecera a mostrar en la lista de sugerencias. La cabecera consta de un literal y de un color. El literal indica el tipo de búsqueda y el color será el que mejor representa a las entidades correspondientes en el mapa.

url string

Dirección del servicio WFS (las búsquedas en API SITNA están implementadas sobre el estándar OGC Web Feature Service).

Ejemplos

			    <div id="mapa"></div>
			    <script>
			        var map = new SITNA.Map("mapa", {
			            controls: {
			                search: {
			                    placeHolder: 'Parcela catastral', // Texto que se mostrará en el cajetín de búsqueda.
			                    instructions: 'Buscar parcela catastral', // Texto que se mostrará como tooltip del botón buscar.
			                    cadastralParcel: { // Objeto de configuración del origen de datos en el cual buscar las parcelas catastrales.
			                        url: '//idena.navarra.es/ogc/wfs', // Dirección del servicio WFS (las búsquedas en API SITNA están implementadas sobre el estándar [OGC Web Feature Service](http://www.opengeospatial.org/standards/wfs).
			                        featurePrefix: 'IDENA', // Prefijo del nombre de la capa o capas a definir en la propiedad `featureType`.En caso de ser un WFS de GeoServer, se trata del nombre del espacio de trabajo (workspace).
			                        geometryName: 'the_geom', // Nombre del campo de la geometría.
			                        featureType: ['CATAST_Pol_ParcelaUrba', 'CATAST_Pol_ParcelaRusti', 'CATAST_Pol_ParcelaMixta'], // Colección con el nombre de las capas a consultar. Es posible indicar más de una capa si todas ellas cuentan con los campos definidos en `queryProperties`.
			                        municipality: { // Definición de la fuente de datos para la búsqueda de parcela por nombre de municipio en lugar de por código del mismo.
			                            featureType: 'CATAST_Pol_Municipio', // Colección de nombre de capa a consultar.
			                            labelProperty: 'MUNICIPIO', // Nombre de campo en el que buscar el texto indicado.
			                            idProperty: 'CMUNICIPIO' // Nombre de campo que identifica unívocamente el municipio cuyos valores deben coincidir con los posibles valores del campo indicado en firstQueryWord.
			                        },
			                        queryProperties: { // Definición de los campos por los que filtrar la búsqueda de parcelas.
			                            firstQueryWord: 'CMUNICIPIO', // Campo en el que buscar el código de municipio.
			                            secondQueryWord: 'POLIGONO', // Campo en el que buscar el polígono.
			                            thirdQueryWord: 'PARCELA' // Campo en el que buscar la parcela.
			                        },
			                        suggestionListHead: { // Configuración de la cabecera a mostrar en la lista de sugerencias. La cabecera consta de un literal y de un color. El literal indica el tipo de búsqueda y el color será el que mejor representa a las entidades correspondientes en el mapa.
			                            label: "search.list.cadastral", // Clave del diccionario de traducciones que indica qué tipo de búsqueda es: Parcela Catastral, Municipio, Calle… en este caso Parcela catastral
			                            color: [ // En este caso la consulta se hace sobre varias capas. Con el siguiente objeto se define el color de los resultados de la búsqueda de cada capa. Estos colores también se mostrarán en la leyenda de la lista de sugerencias de resultados posibles de la búsqueda.
			                                {
			                                    CATAST_Pol_ParcelaUrba: { // Nombre de capa presente en la propiedad `featureType`.
			                                        title: "search.list.cadastral.urban", // Clave del diccionario de traducciones a mostrar como literal en la lista de sugerencias que indentificará a los resultados obtenidos de la capa CATAST_Pol_ParcelaUrba.
			                                        color: { // Definición del color con el que se dibujará los resultados de la búsqueda en el mapa. Este color también se mostrará en la leyenda de la lista de sugerencias de resultados posibles de la búsqueda.
			                                            geomType: "polygon", // Nombre del tipo de geometría presente en `styles` en la cual buscar la propiedad `css`.
			                                            css: "strokeColor" // Nombre de la propiedad de los estilos de la cual extraer el color.
			                                        }
			                                        // El resultado de la configuración anterior será: '#136278'
			                                    }
			                                },
			                                {
			                                    CATAST_Pol_ParcelaRusti: { // Nombre de capa presente en la propiedad `featureType`.
			                                        title: "search.list.cadastral.rustic", // Clave del diccionario de traducciones a mostrar como literal en la lista de sugerencias que indentificará a los resultados obtenidos de la capa CATAST_Pol_ParcelaRusti.
			                                        color: { // Definición del color con el que se dibujará los resultados de la búsqueda en el mapa. Este color también se mostrará en la leyenda de la lista de sugerencias de resultados posibles de la búsqueda.
			                                            geomType: "polygon", // Nombre del tipo de geometría presente en `styles` en la cual buscar la propiedad `css`.
			                                            css: "strokeColor" // Nombre de la propiedad de los estilos de la cual extraer el color.
			                                        }
			                                        // El resultado de la configuración anterior será: '#0C8B3D'
			                                    }
			                                },
			                                {
			                                    CATAST_Pol_ParcelaMixta: { // Nombre de capa presente en la propiedad `featureType`.
			                                        title: "search.list.cadastral.mixed", // Clave del diccionario de traducciones a mostrar como literal en la lista de sugerencias que indentificará a los resultados obtenidos de la capa CATAST_Pol_ParcelaMixta.
			                                        color: { // Definición del color con el que se dibujará los resultados de la búsqueda en el mapa. Este color también se mostrará en la leyenda de la lista de sugerencias de resultados posibles de la búsqueda.
			                                            geomType: "polygon", // Nombre del tipo de geometría presente en `styles` en la cual buscar la propiedad `css`.
			                                            css: "strokeColor" // Nombre de la propiedad de los estilos de la cual extraer el color.
			                                        }
			                                        // El resultado de la configuración anterior será: '#E5475F'
			                                    }
			                                }
			                            ]
			                        },
			                        styles: [ //  Colección de objetos de configuración de estilo. La relación entre capa y estilo se hace mediante el índice en la colección en `featureType` y en `styles`, por tanto, deberá haber tantas instancias como capas definidas en `featureType`.
			                            {
			                                polygon: { // Opciones de estilo de polígono para los resultados obtenidos de la capa CATAST_Pol_ParcelaUrba.
			                                    fillColor: '#000000', // Color de relleno, representado en formato hex triplet (`#RRGGBB`).
			                                    fillOpacity: 0.1, // Opacidad de relleno, valor de 0 a 1.
			                                    strokeColor: '#136278', // Color de trazo de los lados del polígono, representado en formato hex triplet (`#RRGGBB`).
			                                    strokeWidth: 2, // Anchura de trazo en de los lados del polígono.
			                                    strokeOpacity: 1 // Opacidad de trazo de los lados del polígono, valor de 0 a 1.
			                                }
			                            },
			                            {
			                                polygon: { // Opciones de estilo de polígono para los resultados obtenidos de la capa CATAST_Pol_ParcelaRusti.
			                                    fillColor: '#000000', // Color de relleno, representado en formato hex triplet (`#RRGGBB`).
			                                    fillOpacity: 0.1, // Opacidad de relleno, valor de 0 a 1.
			                                    strokeColor: '#0c8b3d', // Color de trazo de los lados del polígono, representado en formato hex triplet (`#RRGGBB`).
			                                    strokeWidth: 2, // Anchura de trazo en de los lados del polígono.
			                                    strokeOpacity: 1 // Opacidad de trazo de los lados del polígono, valor de 0 a 1.
			                                }
			                            },
			                            {
			                                polygon: { // Opciones de estilo de polígono para los resultados obtenidos de la capa CATAST_Pol_ParcelaMixta.
			                                    fillColor: '#000000', // Color de relleno, representado en formato hex triplet (`#RRGGBB`).
			                                    fillOpacity: 0.1, //Opacidad de relleno, valor de 0 a 1.
			                                    strokeColor: '#e5475f', // Color de trazo de los lados del polígono, representado en formato hex triplet (`#RRGGBB`).
			                                    strokeWidth: 2, // Anchura de trazo en de los lados del polígono.
			                                    strokeOpacity: 1 // Opacidad de trazo de los lados del polígono, valor de 0 a 1.
			                                }
			                            }
			                        ]
			                    },
			                    municipality: false, // Desactivamos la búsqueda de municipios.
			                    town: false, // Desactivamos la búsqueda de cascos urbanos.
			                    street: false, // Desactivamos la búsqueda de vías.
			                    postalAddress: false // Desactivamos la búsqueda de direcciones postales.
			                }
			            }
			        });
			    </script>

CadastralSearchOptionsExt

Descripción

Configuración del origen de datos auxiliar a la búsqueda de parcelas catastrales para la codificación de los nombres de municipio.

Propiedades
Nombre Type Descripción
featureType Array.<string>

Colección de nombre de capa o capas a consultar.

idProperty string

Nombre de campo que identifica unívocamente el municipio cuyos valores deben coincidir con los posibles valores del campo indicado en firstQueryWord.

labelProperty string

Nombre de campo en el que buscar el texto indicado.

Ejemplos
{
    url: '//miServicioWFS/ogc/wfs',
    featurePrefix: 'IDENA',    
    featureType: ['Pol_ParcelaUrbana', 'Pol_ParcelaRustica', 'Pol_ParcelaMixta'],
    municipality: {
        featureType: 'Pol_Municipio',
        labelProperty: 'MUNICIPIO',
        idProperty: 'COD_MUNICIPIO'      
    },
    queryProperties: {
        firstQueryWord: 'COD_MUNICIPIO',
        secondQueryWord: 'POLIGONO',
        thirdQueryWord: 'PARCELA'
    }
}

ClickOptions

Descripción

Opciones de control de clics de usuario.

Propiedades
Nombre Type Atributos Descripción
active boolean <optional>

Si se establece a true, el control asociado está activo, es decir, responde a los clics hechos en el mapa desde el que se carga. Como máximo puede haber solamente un control activo en el mapa en cada momento.

callback SITNA.Map~ClickCallback

Función de callback que gestiona la respuesta al clic.


ControlOptions

Descripción

Opciones básicas de control.

Propiedades
Nombre Type Atributos Descripción
div HTMLElement | string <optional>

Elemento del DOM en el que crear el control o valor de atributo id de dicho elemento.

Detalles

CoordinatesOptions

Descripción

Opciones de control de coordenadas.

Propiedades
Nombre Type Atributos Descripción
div HTMLElement | string <optional>

Elemento del DOM en el que crear el control o valor de atributo id de dicho elemento.

showGeo boolean <optional>

Determina si se muestran coordenadas geográficas (en EPSG:4326) además de las del mapa, que por defecto son UTM (EPSG:25830).

Ejemplos
 
<div id="mapa"/>
<script>
    // Hacemos que el control que muestra las coordenadas en pantalla
    // muestre también las coordenadas geográficas
    SITNA.Cfg.controls.coordinates = {
        showGeo: true
    };
    var map = new SITNA.Map('map');
</script>

DataLoaderOptions

Descripción

Opciones de control para añadir datos geográficos.

En el control se pueden añadir WMS escribiendo la dirección del servicio o eligiendo un servicio de la lista de sugerencias de servicios de interés.

También se pueden añadir datos de archivos buscándolos en el cuadro de diálogo que se abre tras pulsar Abrir archivo o arrastrándolos y soltándolos dentro del área del mapa.

Propiedades
Nombre Type Atributos Descripción
div HTMLElement | string <optional>

Elemento del DOM en el que crear el control o valor de atributo id de dicho elemento.

enableDragAndDrop boolean <optional>

Propiedad que establece si está permitido arrastrar y soltar archivos al área del mapa, además de abrirlos de la manera convencional abriendo el cuadro de diálogo de búsqueda de archivos.

wmsSuggestions Array.<SITNA.layer.WmsGroupOptions> <optional>

Lista de grupos de sugerencias de servicios WMS ofrecidos por el control. Por ejemplo se puede establecer un grupo de servicios WMS estatales y otro de servicios WMS mundiales.

Ejemplos
 
<div id="mapa"></div>
<script>
    // Establecemos un layout simplificado apto para hacer demostraciones de controles.
    SITNA.Cfg.layout = "layout/ctl-container";
    // Activamos el proxy para poder acceder a servicios de otro dominio.
    SITNA.Cfg.proxy = "proxy/proxy.ashx?";
    // Añadimos el control de tabla de contenidos en el primer contenedor.
    SITNA.Cfg.controls.TOC = {
        div: "slot1"
    };
    // Añadimos el control de datos externos en el segundo contenedor.
    SITNA.Cfg.controls.dataLoader = {
        div: "slot2",
        enableDragAndDrop: true,
        wmsSuggestions: [
            {
                group: "Estatales",
                items: [
                    {
                        name: "Mapa Base (IGN)",
                        url: "https://www.ign.es/wms-inspire/ign-base"
                    },
                    {
                        name: "Unidades Administrativas (IGN)",
                        url: "https://www.ign.es/wms-inspire/unidades-administrativas"
                    },
                    {
                        name: "Cartografía Topográfica (IGN)",
                        url: "https://www.ign.es/wms-inspire/mapa-raster"
                    },
                    {
                        name: "Ortofotos PNOA Máxima Actualidad (IGN)",
                        url: "https://www.ign.es/wms-inspire/pnoa-ma"
                    }
                ]
            },
            {
                group: "Comunidades limítrofes",
                items: [
                    {
                        name: "Aragón",
                        url: "http://idearagon.aragon.es/Visor2D"
                    },
                    {
                        name: "La Rioja",
                        url: "https://ogc.larioja.org/wms/request.php"
                    },
                    {
                        name: "País Vasco",
                        url: "http://www.geo.euskadi.eus/WMS_KARTOGRAFIA"
                    }
                ]
            }
        ]
    };
    var map = new SITNA.Map("mapa");
</script>

DrawMeasureModifyOptions

Descripción

Opciones del control de dibujo, medida y modificación de geometrías en el mapa.

Propiedades
Nombre Type Atributos Valor por defecto Descripción
div HTMLElement | string <optional>

Elemento del DOM en el que crear el control o valor de atributo id de dicho elemento.

displayElevation boolean | SITNA.ElevationOptions <optional>
false

Si se establece a un valor verdadero, los puntos dibujados mostrarán la elevación del mapa en las coordenadas del punto, y las líneas dibujadas mostrarán un gráfico con su perfil de elevación.

mode string <optional>

Modo de dibujo, es decir, qué tipo de geometría se va a dibujar.

Para establecer el modo hay que darle un valor de SITNA.Consts.geom. Este control tiene tres modos: punto, línea y polígono, correspondientes con los valores SITNA.Consts.geom.POINT, SITNA.Consts.geom.POLYLINE y SITNA.Consts.geom.POLYGON.

Si esta opción no se especifica, se mostrarán los tres modos en tres pestañas de la interfaz de usuario del control.

Ejemplos

<div id="mapa"/>
<script>
    // Establecemos un layout simplificado apto para hacer demostraciones de controles.
    SITNA.Cfg.layout = "layout/ctl-container";
    // Añadimos el control de dibujo, medida y modificación de geometrías en el primer contenedor.
    SITNA.Cfg.controls.drawMeasureModify = {
        div: "slot1",
        displayElevation: { // Se mostrarán elevaciones en los resultados de medida
            resolution: 10 // se mostrará un punto en el perfil cada 10 metros
        }
    };
    var map = new SITNA.Map("mapa");
</script>

FeatureInfoOptions

Descripción

Opciones de control de obtención de información de entidades de mapa por click.

Propiedades
Nombre Type Atributos Descripción
active boolean <optional>

Si se establece a true, el control asociado está activo, es decir, responde a los clics hechos en el mapa desde el que se carga. Como máximo puede haber solamente un control activo en el mapa en cada momento.

persistentHighlights boolean <optional>

Cuando el control featureInfo muestra los resultados de la consulta, si el servicio lo soporta, mostrará resaltadas sobre el mapa las geometrías de las entidades geográficas de la respuesta. Si este valor es true, dichas geometrías se quedan resaltadas en el mapa indefinidamente. En caso contrario, las geometrías resaltadas se borran en el momento en que se cierra el bocadillo de resultados o se hace una nueva consulta.

Ejemplos
 
<div id="mapa"></div>
<script>
    // Añadimos el control featureInfo.
    SITNA.Cfg.controls.featureInfo = {
        persistentHighlights: true
    };
    // Añadimos una capa WMS sobre la que hacer las consultas.
    SITNA.Cfg.workLayers = [
        {
            id: "masas",
            title: "Masas de agua",
            type: SITNA.Consts.layerType.WMS,
            url: "https://servicios.idee.es/wms-inspire/hidrografia",
            layerNames: ["HY.PhysicalWaters.Waterbodies"]
        }
    ];
    var map = new SITNA.Map("mapa");
</script> 

GeolocationOptions

Descripción

Opciones del control GPS y rutas.

Propiedades
Nombre Type Atributos Valor por defecto Descripción
div HTMLElement | string <optional>

Elemento del DOM en el que crear el control o valor de atributo id de dicho elemento.

displayElevation boolean <optional>
true

Si se establece a true, se completará el gráfico del perfil de elevación de la ruta (si esta cuenta con datos de elevación) añadiendo el perfil de elevación resultante del MDT (Modelo Digital de Terreno)

Ejemplos

<div id="mapa"/>
<script>
    // Establecemos un layout simplificado apto para hacer demostraciones de controles.
    SITNA.Cfg.layout = "layout/ctl-container";
    // Añadimos el control GPS y rutas en el primer contenedor definido en el marcado markup.html contenido en el layout definido en la anterior instrucción.
    SITNA.Cfg.controls.geolocation = {
        div: "slot1",
        displayElevation: true // Se añadirá el perfil de elevación del MDT
    };
    var map = new SITNA.Map("mapa");
</script>

GeometryFeatureInfoOptions

Descripción

Opciones de control de obtención de información de entidades de mapa por línea o por recinto.

Propiedades
Nombre Type Atributos Descripción
filterStyle PolylineStyleOptions | PolygonStyleOptions <optional>

Estilo de la entidad cuya geometría servirá de filtro espacial para la consulta.

persistentHighlights boolean <optional>

Cuando el control muestra los resultados de la consulta muestra también resaltadas sobre el mapa las geometrías de las entidades geográficas de la respuesta. Si este valor es verdadero, dichas geometrías se quedan resaltadas en el mapa indefinidamente. En caso contrario, las geometrías resaltadas se borran en el momento en que se cierra el bocadillo de resultados o se hace una nueva consulta.

Detalles

FeatureInfoOptions


LayerCatalogOptions

Descripción

Opciones de control de catálogo de capas disponibles.

Con este control se dispone de las siguientes funcionalidades:

  • Consultar las capas disponibles en uno o varios WMS.
  • Buscar capas mediante texto libre. Se busca el texto en los títulos y los resúmenes descriptivos de cada capa, que se publican en el documento de capacidades del servicio.
  • Añadir capas al mapa como capas de trabajo.
Propiedades
Nombre Type Atributos Descripción
div HTMLElement | string <optional>

Elemento del DOM en el que crear el control o valor de atributo id de dicho elemento.

enableSearch boolean <optional>

Propiedad que establece si se puede buscar capas por texto. La búsqueda del texto se realiza en los títulos y los resúmenes descriptivos de cada capa, que se publican en el documento de capacidades del servicio.

layers Array.<LayerOptions>

Lista de objetos de definición de las con capas de servicios WMS que queremos añadir al catálogo.

En estos objetos, si se asigna un valor a la propiedad layerNames, solo las capas especificadas y sus hijas estarán disponibles para ser añadidas al mapa. Sin embargo, si esta propiedad se deja sin asignar, todas las capas publicadas en el servicio WMS estarán disponibles para ser añadidas.

Ejemplos

<div id="mapa"></div>
<script>
    // Establecemos un layout simplificado apto para hacer demostraciones de controles.
    SITNA.Cfg.layout = "layout/ctl-container";
    // Añadimos el control de capas cargadas en la primera posición.
    SITNA.Cfg.controls.workLayerManager = {
        div: "slot1"
    };
    // Establecemos un proxy porque se hacen peticiones a otro dominio.
    SITNA.Cfg.proxy = "proxy/proxy.ashx?";
    // Añadimos en la segunda posición el catálogo de capas con dos servicios.
    SITNA.Cfg.controls.layerCatalog = {
        div: "slot2",
        enableSearch: true,
        layers: [
            {
                id: "idena",
                title: "IDENA",
                hideTitle: true,
                type: SITNA.Consts.layerType.WMS,
                url: "//idena.navarra.es/ogc/wms",
                hideTree: false
            },
            {
                id: "sismica",
                title: "Información sísmica y volcánica",
                type: SITNA.Consts.layerType.WMS,
                url: "//www.ign.es/wms-inspire/geofisica",
                layerNames: ["Ultimos10dias", "Ultimos30dias", "Ultimos365dias"],
                hideTree: false
            }
        ]
    };
    var map = new SITNA.Map("mapa");
</script>

MapControlOptions

Descripción

Opciones de controles de mapa, define qué controles se incluyen en un mapa y qué opciones se pasan a cada control.

Propiedades
Nombre Type Atributos Valor por defecto Descripción
attribution boolean | SITNA.control.ControlOptions <optional>
true

Si se establece a un valor truthy, el mapa tiene atribución.

basemapSelector boolean | SITNA.control.ControlOptions <optional>
false

Si se establece a un valor truthy, el mapa tiene un selector de mapas de fondo.

click boolean | SITNA.control.ClickOptions <optional>
false

Si se establece a un valor truthy, el mapa tiene un control que gestiona los clics del usuario sobre su ventana de visualización. La atribución es un texto superpuesto al mapa que actúa como reconocimiento de la procedencia de los datos que se muestran.

coordinates boolean | SITNA.control.CoordinatesOptions <optional>
true

Si se establece a un valor truthy, el mapa tiene un indicador de coordenadas y de sistema de referencia espacial.

dataLoader boolean | SITNA.control.DataLoaderOptions <optional>
false

Si se establece a un valor truthy, se muestra un control para añadir datos externos, en concreto servicios WMS y archivos locales de datos geográficos.

Hay más información sobre el funcionamiento del control en la página de documentación de DataLoaderOptions.

download boolean | SITNA.control.TabContainerOptions <optional>
false

Si se establece a un valor truthy, el mapa tiene un control que permite descargar la imagen actual del mapa o las capas cargadas como un archivo de datos vectoriales. Para llevar a cabo esta segunda operación, es necesario que las capas del mapa tengan asociado un servicio WFS al servicio WMS que muestra las entidades en el mapa (software como GeoServer realiza esto automáticamente). El control infiere la URL del servicio WFS a partir de la operación DescribeLayer del estándar WMS-SLD.

drawMeasureModify boolean | SITNA.control.DrawMeasureModifyOptions <optional>
false

Si se establece a un valor truthy, el mapa tiene un control para dibujar, medir y modificar geometrías en el mapa.

featureInfo boolean | SITNA.control.FeatureInfoOptions <optional>
true

Si se establece a un valor truthy, el mapa responde a los clics con un información de las capas cargadas de tipo WMS. Se usa para ello la petición getFeatureInfo del standard WMS.

fullScreen boolean | SITNA.control.ControlOptions <optional>
false

Si se establece a un valor truthy, el mapa incorpora un botón para activar el modo de pantalla completa.

geolocation boolean | SITNA.control.GeolocationOptions <optional>
false

Si se establece a un valor truthy, se muestra un control para geolocalizar y crear, visualizar y guardar rutas.

layerCatalog boolean | SITNA.control.LayerCatalogOptions <optional>
false

Si se establece a un valor truthy, se muestra un control para añadir capas de trabajo desde uno o varios servicios WMS.

Este control se usa habitualmente en combinación con workLayerManager. Hay más información de cómo funcionan ambos controles en la página de documentación de LayerCatalogOptions.

legend boolean | SITNA.control.ControlOptions <optional>
false

Si se establece a un valor truthy, el mapa tiene leyenda.

loadingIndicator boolean | SITNA.control.ControlOptions <optional>
true

Si se establece a un valor truthy, el mapa tiene un indicador de espera de carga.

measure boolean | SITNA.control.ControlOptions <optional>
false

Si se establece a un valor truthy, el mapa tiene un medidor de longitudes, áreas y perímetros.

multiFeatureInfo boolean | SITNA.control.MultiFeatureInfoOptions <optional>
false

Si se establece a un valor truthy, el mapa incluye un control que permite la obtención de información de las entidades que se intersecan con puntos, líneas o polígonos dibujados por el usuario. Para líneas y polígonos, es necesario que las capas del mapa tengan asociado un servicio WFS al servicio WMS que muestra las entidades en el mapa (software como GeoServer realiza esto automáticamente). El control infiere la URL del servicio WFS a partir de la operación DescribeLayer del estándar WMS-SLD.

navBar boolean | SITNA.control.ControlOptions <optional>
false

Si se establece a un valor truthy, el mapa tiene una barra de navegación con control de zoom.

offlineMapMaker boolean | SITNA.control.OfflineMapMakerOptions <optional>
false

Si se establece a un valor truthy, el mapa tiene un creador de mapas sin conexión para uso sin acceso a Internet.

Hay más información sobre los requisitos necesarios para el correcto funcionamiento del control en la página de documentación de OfflineMapMakerOptions.

overviewMap boolean | SITNA.control.OverviewMapOptions <optional>
false

Si se establece a un valor truthy, el mapa tiene un mapa de situación.

popup boolean | SITNA.control.ControlOptions <optional>
false

Si se establece a un valor truthy, el mapa muestra los datos asociados a los marcadores cuando se pulsa sobre ellos.

printMap boolean | SITNA.control.PrintMapOptions <optional>
false

Si se establece a un valor truthy, se muestra una herramienta para imprimir el mapa en PDF.

El control permite al usuario elegir entre varios tamaños de hoja y orientación horizontal o vertical, además se le puede poner un título al documento de impresión.

Al pulsar el botón de imprimir se abre una previsualización como paso previo a la impresión. Ahí el usuario puede realizar unos últimos ajustes a la extensión del mapa.

El PDF se generará al pulsar en el botón dentro de la previsualización.

scale boolean | SITNA.control.ControlOptions <optional>
false

Si se establece a un valor truthy, el mapa tiene un indicador numérico de escala.

scaleBar boolean | SITNA.control.ControlOptions <optional>
false

Si se establece a un valor truthy, el mapa tiene un indicador gráfico de escala.

scaleSelector boolean | SITNA.control.ControlOptions <optional>
false

Si se establece a un valor truthy, el mapa tiene un selector numérico de escala.

search boolean | SITNA.control.SearchOptions <optional>
false

Si se establece a un valor truthy, el mapa tiene un buscador. El buscador localiza coordenadas y busca entidades geográficas tales como: municipios, cascos urbanos, vías, portales, topónimos, topónimos por municipio, carreteras, puntos kilométricos y parcelas catastrales de IDENA. Es posible establecer un origen de datos distinto a IDENA en el que buscar, consultar en SearchOptions.

share boolean | SITNA.control.ControlOptions <optional>
false

Si se establece a un valor truthy, el mapa tiene un control para compartir mapas por distintos canales.

Para que el control funcione correctamente, hay que establecer un valor verdadero a la opción stateful del mapa (Ver SITNA.MapOptions).

streetView boolean | SITNA.control.StreetViewOptions <optional>
true

Si se establece a un valor truthy, el usuario podrá abrir una ventana de Google StreetView en la ubicación seleccionada en el mapa.

threed boolean <optional>
false

Si se establece a true, el mapa incorpora un botón para conmutar entre las vistas 2D y 3D. Este control requiere de la configuración adicional de una vista en la cual se renderizará la vista 3D, para ello se deben seguir los siguientes pasos:

  • Añadir en el marcado elemento del DOM en el cual renderizar la vista 3D.
  • Establecer la propiedad views del mapa (Ver SITNA.MapOptions) indicando como valor un objeto con la estructura definida en SITNA.MapViewOptions.
  • Establecer la propiedad threeD del objeto anterior configurando como valor un objeto siguiendo la estructura de SITNA.ThreeDViewOptions.
TOC boolean | SITNA.control.ControlOptions <optional>
false

Si se establece a un valor truthy, el mapa tiene una tabla de contenidos mostrando las capas de trabajo y los grupos de marcadores. Los controles TOC y workLayerManager realizan varias funciones comunes, así rara vez será necesario tener los dos a la vez en un visor.

WFSEdit boolean | SITNA.control.WFSEditOptions <optional>
false

Si se establece a un valor truthy, se añade un control para editar las entidades de las capas vectoriales de tipo WFS o de las capas de tipo WMS si estas tienen asociado un servicio WFS. Con este control se pueden crear, modificar y eliminar entidades. Las modificaciones pueden ser de geometría o de atributos.

WFSQuery boolean | SITNA.control.WFSQueryOptions <optional>
false

Si se establece a un valor truthy, desde el control workLayerManager se pueden hacer consultas alfanuméricas a las capas del mapa.

workLayerManager boolean | SITNA.control.ControlOptions <optional>
false

Si se establece a un valor truthy, se muestra un control para consultar y gestionar las capas de trabajo que están cargadas en el mapa. Con este control se dispone de las siguientes funcionalidades:

  • Consultar qué capas están cargadas en el mapa
  • Ver en qué orden están superpuestas y modificar ese orden
  • Comprobar si una capa es visible al nivel de zoom actual
  • Activar y desactivar la visibilidad de las capas
  • Establecer el grado de transparencia de cada capa
  • Borrar capas cargadas
  • Consultar metadatos asociados a la capa
  • Si está también el control WFSQuery, ejecutar consultas alfanuméricas sobre las capas cargadas en el mapa, si cuentan con un servicio WFS pareado al WMS.

Los controles workLayerManager y TOC realizan varias funciones comunes, así rara vez será necesario tener los dos a la vez en un visor.

Ejemplos

Ejemplo de uso de propiedad featureInfo - Ver en vivo


<div id="mapa"></div>
<script>
    // Añadimos el control featureInfo.
    SITNA.Cfg.controls.featureInfo = true;
    // Añadimos una capa WMS sobre la que hacer las consultas.
    SITNA.Cfg.workLayers = [
        {
            id: "terremotos",
            title: "Terremotos últimos 365 días",
            type: SITNA.Consts.layerType.WMS,
            url: "https://www.ign.es/wms-inspire/geofisica",
            layerNames: ["Ultimos365dias"]
        }
    ];
    var map = new SITNA.Map("mapa");
</script>

Ejemplo de uso de propiedad fullScreen - Ver en vivo


<div id="mapa"></div>
<script>
    // Añadimos el control fullScreen.
    SITNA.Cfg.controls.fullScreen = true;
    var map = new SITNA.Map("mapa");
</script>

Ejemplo de uso de propiedad printMap - Ver en vivo


<div id="mapa"></div>
<script>
    // Establecemos un layout simplificado apto para hacer demostraciones de controles.
    SITNA.Cfg.layout = "layout/ctl-container";
    // Añadimos el control de impresión en el primer contenedor.
    SITNA.Cfg.controls.printMap = {
        div: "slot1"
    };
    var map = new SITNA.Map("mapa");
</script>

Ejemplo de uso de propiedad share - Ver en vivo


<div id="mapa"></div>
<script>
    // Establecemos un layout simplificado apto para hacer demostraciones de controles.
    SITNA.Cfg.layout = "layout/ctl-container";
    // Establecemos el mapa con estado (necesario para añadir el control de compartir)
    SITNA.Cfg.stateful = true;
    // Añadimos el control de mapas de fondo en el primer contenedor.
    SITNA.Cfg.controls.basemapSelector = {
        div: "slot1"
    };
    // Añadimos el control de compartir en el segundo contenedor.
    SITNA.Cfg.controls.share = {
        div: "slot2"
    };
    var map = new SITNA.Map("mapa");
</script>

Ejemplo de uso de propiedad workLayerManager - Ver en vivo


<div id="mapa"></div>
<script>
    // Establecemos un layout simplificado apto para hacer demostraciones de controles.
    SITNA.Cfg.layout = "layout/ctl-container";
    // Añadimos el control de capas cargadas en la primera posición.
    SITNA.Cfg.controls.workLayerManager = {
        div: "slot1"
    };
    // Añadimos tres capas WMS.
    SITNA.Cfg.workLayers = [
        {
            id: "relieve",
            type: SITNA.Consts.layerType.WMS,
            url: "//idena.navarra.es/ogc/wms",
            layerNames: ["IDENA:mapa_relieve_bn"]
        },
        {
            id: "pefc",
            type: SITNA.Consts.layerType.WMS,
            url: "//idena.navarra.es/ogc/wms",
            layerNames: ["IDENA:FOREST_Pol_MontesPEFC"]
        },
        {
            id: "pistas",
            type: SITNA.Consts.layerType.WMS,
            url: "//idena.navarra.es/ogc/wms",
            layerNames: ["IDENA:FOREST_Lin_PistasForP"]
        }
    ];
    var map = new SITNA.Map("mapa");
</script>
Detalles

MultiFeatureInfoModeOptions

Descripción

Opciones de los distintos modos de consulta espacial (por click, por línea o por recinto) del control de obtención de información de entidades de mapa por geometría.

Propiedades
Nombre Type Atributos Valor por defecto Descripción
point boolean | SITNA.control.FeatureInfoOptions <optional>
true

Si se establece a un valor verdadero, el control permite la selección de entidades por punto.

polyline boolean | SITNA.control.GeometryFeatureInfoOptions <optional>

Si se establece a un valor verdadero, el control permite la selección de entidades por línea.

polygon boolean | SITNA.control.GeometryFeatureInfoOptions <optional>
true

Si se establece a un valor verdadero, el control permite la selección de entidades por polígono.


MultiFeatureInfoOptions

Descripción

Opciones de control de obtención de información de entidades de mapa en el que el método de selección es dibujar una geometría en el mapa. El control ofrece como resultados todas las entidades que se intersecan con esa geometría. Las geometrías de selección pueden ser puntos, líneas o polígonos.

Este control utiliza las funcionalidades de los servicios OGC para realizar su cometido. En concreto, la selección por punto hace uso de la petición GetFeatureInfo de los servicios WMS. Por otro lado, las selecciones por línea y polígono emplean la petición GetFeature de los servicios WFS. Esto implica que en este caso debe existir un servicio WFS asociado al servicio WMS que ofrezca los mismos datos que este. Servidores de mapas como GeoServer tienen este comportamiento por defecto. El control infiere la URL del servicio WFS a partir de la operación DescribeLayer del estándar WMS-SLD.

Propiedades
Nombre Type Atributos Descripción
active boolean <optional>

Si se establece a true, el control asociado está activo, es decir, responde a las pulsaciones hechas en el mapa desde el que se carga. Como máximo puede haber solamente un control activo en el mapa en cada momento.

div HTMLElement | string <optional>

Elemento del DOM en el que crear el control o valor de atributo id de dicho elemento.

modes SITNA.control.MultiFeatureInfoModeOptions <optional>

Opciones de configuración de los modos disponibles de selección.

persistentHighlights boolean <optional>

Cuando el control muestra los resultados de la consulta, si el servicio lo soporta, mostrará resaltadas sobre el mapa las geometrías de las entidades geográficas de la respuesta. Si el valor de esta propiedad es true, dichas geometrías se quedan resaltadas en el mapa indefinidamente. En caso contrario, las geometrías resaltadas se borran en el momento en que se cierra el bocadillo de resultados o se hace una nueva consulta.

Ejemplos
 
<div id="mapa"></div>
<script>
    // Establecemos un layout simplificado apto para hacer demostraciones de controles.
    SITNA.Cfg.layout = "layout/ctl-container";
    // Añadimos el control multiFeatureInfo.
    SITNA.Cfg.controls.multiFeatureInfo = {
        div: "slot1",
        modes: {
            point: true,
            polyline: {
                filterStyle: {
                    strokeColor: "#00cccc",
                    strokeWidth: 4
                }
            },
            polygon: {
                filterStyle: {
                    strokeColor: "#6633cc",
                    strokeWidth: 3,
                    fillColor: "#6633cc",
                    fillOpacity: 0.5
                }
            }
        },
        persistentHighlights: true
    };
    // Añadimos una capa WMS sobre la que hacer las consultas.
    // El servicio WMS de IDENA tiene un servicio WFS asociado (imprescindible para consultas por línea o recinto).
    SITNA.Cfg.workLayers = [
        {
            id: "cp",
            type: SITNA.Consts.layerType.WMS,
            url: "https://idena.navarra.es/ogc/wms",
            layerNames: ["IDENA:DIRECC_Pol_CodPostal"]
        }
    ];
    var map = new SITNA.Map("mapa");
</script> 
Detalles

FeatureInfoOptions


MunicipalitySearchOptions

Descripción

Opciones de configuración del origen de datos de la búsqueda de municipios.

Propiedades
Nombre Type Atributos Valor por defecto Descripción
dataIdProperty Array.<string>

Colección con el nombre del campo o campos que nos servirán para identificar unívocamente a un municipio. Los campos definidos deben existir en la capa o capas definidas en la propiedad featureType.

featurePrefix string

Prefijo del nombre de la capa o capas a definir en la propiedad featureType. En caso de ser un WFS de GeoServer, se trata del nombre del espacio de trabajo (workspace).

featureType Array.<string>

Colección con el nombre de la capa o capas a consultar. Es posible indicar más de una capa si todas ellas cuentan con los campos definidos en queryProperties.

geometryName string

Nombre del campo de la geometría del municipio.

outputFormat string <optional>
SITNA.Consts.format.JSON

Tipo de formato en el cual obtener los datos del servicio WFS. Valores admitidos: SITNA.Consts.format.JSON, SITNA.Consts.format.GML3, SITNA.Consts.format.GML32 o SITNA.Consts.format.GML.

outputFormatLabel string

Cadena con el patrón a mostrar en la lista de sugerencias. Reemplaza el valor numérico (entre llaves) que corresponde con el índice de la colección outputProperties con el valor del campo. Las llaves de cierre y apertura son necesarias.

Por ejemplo: outputProperties como [NombreMunicipio] y outputFormatLabel como “{0}” para un resultado con valor del campo NombreMunicipio a Pamplona mostrará en la lista resultados del tipo: Pamplona.

outputProperties Array.<string>

Colección con los nombres de campos a mostrar (según el patrón indicando en outputFormatLabel) en la lista de sugerencias. Los campos indicados también se usan para controlar los posibles registros duplicados en la lista de sugerencias. Es decir, indicando código y nombre los resultados se agruparán por los 2 campos. Los campos definidos deben existir en la capa o capas definidas en la propiedad featureType.

queryProperties SearchQueryPropertyOptions

Definición de los campos por los que filtrar la búsqueda de municipios.

En este tipo de búsqueda es obligatorio dar un valor a la propiedad firstQueryWord: se indicará el campo o campos (tipo string) en los que buscar el nombre del municipio.

styles Array.<SITNA.layer.StyleOptions>

Colección de objetos de configuración de estilo. La relación entre capa y estilo se hace mediante el índice en la colección en featureType y en styles, por tanto, deberá haber tantas instancias como capas definidas en featureType.

No está disponible cluster.

suggestionListHead SearchSuggestionHeaderOptions

Configuración de la cabecera a mostrar en la lista de sugerencias. La cabecera consta de un literal y de un color. El literal indica el tipo de búsqueda y el color será el que mejor representa a las entidades correspondientes en el mapa.

url string

Dirección del servicio WFS (las búsquedas en API SITNA están implementadas sobre el estándar OGC Web Feature Service).

Ejemplos

			    <div id="mapa"></div>
			    <script>
			        var map = new SITNA.Map("mapa", {
			            controls: {
			                search: {
			                    placeHolder: 'Municipio', // Texto que se mostrará en el cajetín de búsqueda.
			                    instructions: 'Buscar municipio', // Texto que se mostrará como tooltip del botón buscar.
			                    municipality: { // Objeto de configuración del origen de datos en el cual buscar los municipios.
			                        url: '//idena.navarra.es/ogc/wfs', // Dirección del servicio WFS (las búsquedas en API SITNA están implementadas sobre el estándar [OGC Web Feature Service](http://www.opengeospatial.org/standards/wfs).
			                        featurePrefix: 'IDENA', // Prefijo del nombre de la capa a definir en la propiedad `featureType`.En caso de ser un WFS de GeoServer, se trata del nombre del espacio de trabajo (workspace).
			                        geometryName: 'the_geom', // Nombre del campo de la geometría.
			                        featureType: ['CATAST_Pol_Municipio'], // Colección con el nombre de la capa a consultar. Es posible indicar más de una capa si todas ellas cuentan con los campos definidos en `queryProperties`.
			                        dataIdProperty: ['CMUNICIPIO'], // Colección con el nombre del campo que nos servirá para identificar unívocamente a un municipio. Los campos definidos deben existir en la capa o capas definidas en la propiedad `featureType`.
			                        queryProperties: { // Definición de los campos por los que filtrar la búsqueda de municipios.
			                            firstQueryWord: ['MUNINOAC', 'MUNICIPIO'] // Campos en los que buscar el nombre de municipio.
			                        },
			                        suggestionListHead: { //  Configuración de la cabecera a mostrar en la lista de sugerencias. La cabecera consta de un literal y de un color. El literal indica el tipo de búsqueda y el color será el que mejor representa a las entidades correspondientes en el mapa.
			                            label: "search.list.municipality", // Clave del diccionario de traducciones que indica qué tipo de búsqueda es: Parcela Catastral, Municipio, Calle… en este caso Municipio.
			                            color: "strokeColor" // Configuración para obtener el color que representa al tipo de búsqueda. Se establece como color la primera coincidencia en `styles` que cumpla con la configuración.
			                        }, // El resultado de la configuración anterior será: '#FE06A5'.
			                        outputProperties: ['MUNICIPIO'], // Colección con el nombre del campo a mostrar (según el patrón indicando en `outputFormatLabel`) en la lista de sugerencias.
			                        outputFormatLabel: '{0}', // Cadena con el patrón a mostrar en la lista de sugerencias. Reemplaza el valor numérico (entre llaves) que corresponde con el índice de la colección `outputProperties` con el valor del campo.
			                        styles: [ // Colección de objetos de configuración de estilo. La relación entre capa y estilo se hace mediante el índice en la colección en `featureType` y en `styles`, por tanto, deberá haber tantas instancias como capas definidas en `featureType`.
			                            {
			                                polygon: { // Opciones de estilo de polígono para los resultados obtenidos.
			                                    fillColor: '#000000', // Color de relleno, representado en formato hex triplet (`#RRGGBB`).
			                                    fillOpacity: 0.1, // Opacidad de relleno, valor de 0 a 1.
			                                    strokeColor: '#fe06a5', // Color de trazo de los lados del polígono, representado en formato hex triplet (`#RRGGBB`).
			                                    strokeWidth: 2, // Anchura de trazo en de los lados del polígono.
			                                    strokeOpacity: 1 // Opacidad de trazo de los lados del polígono, valor de 0 a 1.
			                                }
			                            }
			                        ]
			                    },
			                    cadastralParcel: false, // Desactivamos la búsqueda de parcelas catastrales.
			                    town: false, // Desactivamos la búsqueda de cascos urbanos.
			                    street: false, // Desactivamos la búsqueda de vías.
			                    postalAddress: false // Desactivamos la búsqueda de direcciones postales.
			                }
			            }
			        });
			    </script>

OfflineMapMakerOptions

Descripción

Opciones del creador de mapas sin conexión.

Para que ese control funcione correctamente, es necesario cumplir estos dos requisitos:

  1. Debe instalarse en el ámbito de la aplicación que contiene el visor el Service Worker creado para el funcionamiento de este control. Para ello basta con copiar el archivo tc-cb-service-worker.js a la carpeta raíz de dicha aplicación.
  2. Debe incluirse en la carpeta de la aplicación un archivo de texto con el nombre manifest.appcache. Este archivo es un documento de manifiesto de caché de aplicaciones[*] que contiene una lista de las URL de todos los recursos que tienen que almacenarse en la cache del navegador y así asegurar la carga de la aplicación en ausencia de conexión a Internet.

[*]: El estándar de caché de aplicaciones está obsoleto hoy en día y este control no hace realmente uso de él para ejercer su función, pero para funcionar necesita una lista de todos los recursos a cargar en la cache del navegador, y un manifiesto de caché de aplicaciones es precisamente una lista de ese tipo. Se usa este formato por compatibilidad hacia atrás y por ser de un estándar bien documentado.

Propiedades
Nombre Type Atributos Valor por defecto Descripción
div HTMLElement | string <optional>

Elemento del DOM en el que crear el control o valor de atributo id de dicho elemento.

averageTileSize number <optional>
31000

Tamaño medio estimado en bytes para cada una de las teselas del mapa. Este valor se utiliza para estimar el tamaño total que tendrá en disco el mapa sin conexión.

offlineMapHintDiv HTMLElement | string <optional>

Elemento del DOM en el que crear el indicador de que se está en un mapa offline. Si no se especifica dicho indicador se mostrará superpuesto al área del mapa.

Ejemplos

<div id="mapa"></div>
<script>
    // Establecemos un layout simplificado apto para hacer demostraciones de controles.
    SITNA.Cfg.layout = "layout/ctl-container";
    // Añadimos el control de selección de capas de fondo en el primer contenedor.
    SITNA.Cfg.controls.basemapSelector = {
        div: "slot1"
    };
    // Añadimos el control de creación de mapas sin conexión en el segundo contenedor.
    SITNA.Cfg.controls.offlineMapMaker = {
        div: "slot2"
    };
    var map = new SITNA.Map("mapa");
</script>

Documento de manifiesto manifest.appcache


CACHE MANIFEST
# Documento de manifiesto para el ejemplo de uso del control offlineMapMaker

CACHE:
cfg.MapControlOptions.offlineMapMaker.html
examples.css
examples.js
../
../css/tcmap.css
../resources/es-ES.json
../config/browser-versions.js
../layout/responsive/style.css
../css/fonts/sitna.woff
../css/fonts/mapskin.woff
../layout/responsive/fonts/fontawesome-webfont.woff?v=4.5.0
../css/img/thumb-orthophoto.jpg
../css/img/thumb-bta.png
../css/img/thumb-basemap.png
../css/img/thumb-cadaster.png
layout/ctl-container/config.json
layout/ctl-container/style.css
layout/ctl-container/script.js
layout/ctl-container/markup.html
layout/ctl-container/resources/es-ES.json
https://idena.navarra.es/ogc/wms?SERVICE=WMS&VERSION=1.3.0&REQUEST=GetCapabilities

OverviewMapOptions

Descripción

Opciones de control de mapa de situación.

Propiedades
Nombre Type Atributos Descripción
div HTMLElement | string <optional>

Elemento del DOM en el que crear el control o valor de atributo id de dicho elemento.

layer string | object

Identificador de capa para usar como mapa de fondo u objeto de opciones de capa.


PlaceNameMunicipalitySearchOptions

Descripción

Opciones de configuración del origen de datos de la búsqueda de topónimo en un municipio.

Propiedades
Nombre Type Atributos Valor por defecto Descripción
dataIdProperty Array.<string>

Colección con el nombre del campo o campos que nos servirán para identificar unívocamente a un topónimo en un municipio. Los campos definidos deben existir en la capa o capas definidas en la propiedad featureType.

featurePrefix string

Prefijo del nombre de la capa o capas a definir en la propiedad featureType. En caso de ser un WFS de GeoServer, se trata del nombre del espacio de trabajo (workspace).

featureType Array.<string>

Colección con el nombre de la capa o capas a consultar. Es posible indicar más de una capa si todas ellas cuentan con los campos definidos en queryProperties.

geometryName string

Nombre del campo de la geometría del topónimo.

outputFormat string <optional>
SITNA.Consts.format.JSON

Tipo de formato en el cual obtener los datos del servicio WFS. Valores admitidos: SITNA.Consts.format.JSON, SITNA.Consts.format.GML3, SITNA.Consts.format.GML32 o SITNA.Consts.format.GML.

outputFormatLabel string

Cadena con el patrón a mostrar en la lista de sugerencias. Reemplaza el valor numérico (entre llaves) que corresponde con el índice de la colección outputProperties con el valor del campo. Las llaves de cierre y apertura son necesarias.

Por ejemplo: outputProperties como ['MUNICIPIO', 'TOPONIMO', 'CMUNICIPIO', 'CTOPONIMO'] y outputFormatLabel como “{1} ({0})” para un resultado con valor del campo MUNICIPIO a Aranguren y valor del campo TOPONIMO a Camino de Pamplona mostrará en la lista resultados del tipo: Camino de Pamplona (Aranguren).

outputProperties Array.<string>

Colección con los nombres de campos a mostrar (según el patrón indicando en outputFormatLabel) en la lista de sugerencias. Los campos indicados también se usan para controlar los posibles registros duplicados en la lista de sugerencias. Es decir, indicando código y nombre los resultados se agruparán por los 2 campos. Los campos definidos deben existir en la capa o capas definidas en la propiedad featureType.

queryProperties SearchQueryPropertyOptions

Definición de los campos por los que filtrar la búsqueda de topónimo en un municipio.

En este tipo de búsqueda es obligatorio dar un valor a las siguientes propiedades:

  • firstQueryWord: se indicará el campo o campos (tipo string) en los que buscar el nombre del municipio.
  • secondQueryWord: se indicará el campo o campos (tipo string) en los que buscar el nombre del topónimo.
renderFeatureType Array.<string>

Colección con los nombres de las capas auxiliares a añadir al resultado de la búsqueda en el mapa. Es posible indicar más de una capa si todas ellas cuentan con los campos definidos en dataIdProperty.

No se muestran sugerencias en base a las capas auxiliares, únicamente se añade información en el momento de pintar en el mapa, es por ello que debe existir relación en los datos entre las capas definidas en featureType y renderFeatureType y que ambas cuenten con los campos definidos en dataIdProperty.

styles Array.<SITNA.layer.StyleOptions>

Colección de objetos de configuración de estilo. La relación entre capa y estilo se hace mediante el índice en las colecciones 1 y 2 siendo 1 la concatenación de featureType y renderFeatureType y 2 styles, por tanto, deberá haber tantas instancias como la suma de las capas definidas en featureType y en renderFeatureType.

No está disponible cluster.

suggestionListHead SearchSuggestionHeaderOptions

Configuración de la cabecera a mostrar en la lista de sugerencias. La cabecera consta de un literal y de un color. El literal indica el tipo de búsqueda y el color será el que mejor representa a las entidades correspondientes en el mapa.

url string

Dirección del servicio WFS (las búsquedas en API SITNA están implementadas sobre el estándar OGC Web Feature Service).

Ejemplos

			    <div id="mapa"></div>
			    <script>
			        var map = new SITNA.Map("mapa", {
			            controls: {
			                search: {
			                    placeHolder: 'Topónimo en municipio', // Texto que se mostrará en el cajetín de búsqueda.
			                    instructions: 'Buscar topónimo en un municipio', // Texto que se mostrará como tooltip del botón buscar.
			                    placeNameMunicipality: { // Objeto de configuración del origen de datos en el cual buscar topónimo en un municipio.
			                        url: '//idena.navarra.es/ogc/wfs', // Dirección del servicio WFS (las búsquedas en API SITNA están implementadas sobre el estándar [OGC Web Feature Service](http://www.opengeospatial.org/standards/wfs).
			                        featurePrefix: 'IDENA', // Prefijo del nombre de la capa o capas a definir en la propiedad `featureType`.En caso de ser un WFS de GeoServer, se trata del nombre del espacio de trabajo (workspace).
			                        geometryName: 'the_geom', // Nombre del campo de la geometría.
			                        featureType: ['TOPONI_Txt_Toponimos'], // Colección con el nombre de la capa a consultar. Es posible indicar más de una capa si todas ellas cuentan con los campos definidos en `queryProperties`.
			                        dataIdProperty: ['CMUNICIPIO', 'CTOPONIMO'], // Colección con los nombres de los campos que nos servirán para identificar unívocamente a un topónimo en un municipio. Los campos definidos deben existir en la capa o capas definidas en la propiedad `featureType`.
			                        queryProperties: { // Definición de los campos por los que filtrar la búsqueda de topónimo en un municipio.
			                            firstQueryWord: ['MUNICIPIO', 'MUNINOAC'], // Campos en los que buscar el nombre de municipio.
			                            secondQueryWord: ['TOPONIMO', 'TOPONINOAC'] // Campos en los que buscar el nombre del topónimo.
			                        },
			                        suggestionListHead: { // Configuración de la cabecera a mostrar en la lista de sugerencias. La cabecera consta de un literal y de un color. El literal indica el tipo de búsqueda y el color será el que mejor representa a las entidades correspondientes en el mapa.
			                            label: "search.list.placeName", // Clave del diccionario de traducciones que indica qué tipo de búsqueda es: Parcela Catastral, Municipio, Calle… en este caso Topónimo
			                            color: "fontColor" // Configuración para obtener el color que representa al tipo de búsqueda. Se establece como color la primera coincidencia en `styles` que cumpla con la configuración.
			                        }, // El resultado de la configuración anterior será: '#FF5722'.
			                        outputProperties: ['MUNICIPIO', 'TOPONIMO', 'CMUNICIPIO', 'CTOPONIMO'], // Colección con los nombres de los campos a mostrar (según el patrón indicando en `outputFormatLabel`) en la lista de sugerencias.
			                        outputFormatLabel: '{1} ({0})', // Cadena con el patrón a mostrar en la lista de sugerencias. Reemplaza el valor numérico (entre llaves) que corresponde con el índice de la colección `outputProperties` con el valor del campo.
			                        styles: [ // Colección de objetos de configuración de estilo. La relación entre capa y estilo se hace mediante el índice en la colección en `featureType` y en `styles`, por tanto, deberá haber tantas instancias como capas definidas en `featureType`.
			                            {
			                                point: { // Opciones de estilo de punto para los resultados obtenidos.
			                                    radius: 0, // Radio en píxeles del símbolo que representa el punto.
			                                    label: "TOPONIMO", // Nombre de campo del cual extraer el valor de la etiqueta.
			                                    labelRotationKey: "CADANGLE", // Nombre de campo del cual extraer la rotación a aplicar a la etiqueta.
			                                    fontColor: "#ff5722", // Color del texto de la etiqueta descriptiva del punto, representado en formato hex triplet (`#RRGGBB`).
			                                    fontSize: 14, // Tamaño de fuente del texto de la etiqueta descriptiva del punto en píxeles.
			                                    labelOutlineColor: "#FFFFFF",  // Color del contorno del texto de la etiqueta descriptiva del punto, representado en formato hex triplet (`#RRGGBB`).
			                                    labelOutlineWidth: 4 // Anchura en píxeles del trazo del contorno del texto de la etiqueta.
			                                }
			                            }
			                        ]
			                    },
			                    cadastralParcel: false, // Desactivamos la búsqueda de parcelas catastrales.
			                    municipality: false, // Desactivamos la búsqueda de municipios.
			                    town: false, // Desactivamos la búsqueda de cascos urbanos.
			                    street: false, // Desactivamos la búsqueda de vías.
			                    postalAddress: false // Desactivamos la búsqueda de direcciones postales.
			                }
			            }
			        });
			    </script>

PlaceNameSearchOptions

Descripción

Opciones de configuración del origen de datos de la búsqueda de topónimo.

Propiedades
Nombre Type Atributos Valor por defecto Descripción
dataIdProperty Array.<string>

Colección con el nombre del campo o campos que nos servirán para identificar unívocamente a un topónimo. Los campos definidos deben existir en la capa o capas definidas en la propiedad featureType.

featurePrefix string

Prefijo del nombre de la capa o capas a definir en la propiedad featureType. En caso de ser un WFS de GeoServer, se trata del nombre del espacio de trabajo (workspace).

featureType Array.<string>

Colección con el nombre de la capa o capas a consultar. Es posible indicar más de una capa si todas ellas cuentan con los campos definidos en queryProperties.

geometryName string

Nombre del campo de la geometría del topónimo.

outputFormat string <optional>
SITNA.Consts.format.JSON

Tipo de formato en el cual obtener los datos del servicio WFS. Valores admitidos: SITNA.Consts.format.JSON, SITNA.Consts.format.GML3, SITNA.Consts.format.GML32 o SITNA.Consts.format.GML.

outputFormatLabel string

Cadena con el patrón a mostrar en la lista de sugerencias. Reemplaza el valor numérico (entre llaves) que corresponde con el índice de la colección outputProperties con el valor del campo. Las llaves de cierre y apertura son necesarias.

Por ejemplo: outputProperties como ['MUNICIPIO', 'TOPONIMO'] y outputFormatLabel como “{1} ({0})” para un resultado con valor del campo MUNICIPIO a Aranguren y valor del campo TOPONIMO a Camino de Pamplona mostrará en la lista resultados del tipo: Camino de Pamplona (Aranguren).

outputProperties Array.<string>

Colección con los nombres de campos a mostrar (según el patrón indicando en outputFormatLabel) en la lista de sugerencias. Los campos indicados también se usan para controlar los posibles registros duplicados en la lista de sugerencias. Es decir, indicando código y nombre los resultados se agruparán por los 2 campos. Los campos definidos deben existir en la capa o capas definidas en la propiedad featureType.

queryProperties SearchQueryPropertyOptions

Definición de los campos por los que filtrar la búsqueda de topónimo.

En este tipo de búsqueda es obligatorio dar un valor a la siguiente propiedad:

  • firstQueryWord: se indicará el campo o campos (tipo string) en los que buscar el nombre del topónimo.
renderFeatureType Array.<string>

Colección con los nombres de las capas auxiliares a añadir al resultado de la búsqueda en el mapa. Es posible indicar más de una capa si todas ellas cuentan con los campos definidos en dataIdProperty.

No se muestran sugerencias en base a las capas auxiliares, únicamente se añade información en el momento de pintar en el mapa, es por ello que debe existir relación en los datos entre las capas definidas en featureType y renderFeatureType y que ambas cuenten con los campos definidos en dataIdProperty.

styles Array.<SITNA.layer.StyleOptions>

Colección de objetos de configuración de estilo. La relación entre capa y estilo se hace mediante el índice en las colecciones 1 y 2 siendo 1 la concatenación de featureType y renderFeatureType y 2 styles, por tanto, deberá haber tantas instancias como la suma de las capas definidas en featureType y en renderFeatureType.

No está disponible cluster.

suggestionListHead SearchSuggestionHeaderOptions

Configuración de la cabecera a mostrar en la lista de sugerencias. La cabecera consta de un literal y de un color. El literal indica el tipo de búsqueda y el color será el que mejor representa a las entidades correspondientes en el mapa.

url string

Dirección del servicio WFS (las búsquedas en API SITNA están implementadas sobre el estándar OGC Web Feature Service).

Ejemplos

			    <div id="mapa"></div>
			    <script>
			        var map = new SITNA.Map("mapa", {
			            controls: {
			                search: {
			                    placeHolder: 'Topónimo', // Texto que se mostrará en el cajetín de búsqueda.
			                    instructions: 'Buscar topónimo', // Texto que se mostrará como tooltip del botón buscar.
			                    placeName: { // Objeto de configuración del origen de datos en el cual buscar topónimo.
			                        url: '//idena.navarra.es/ogc/wfs', // Dirección del servicio WFS (las búsquedas en API SITNA están implementadas sobre el estándar [OGC Web Feature Service](http://www.opengeospatial.org/standards/wfs).
			                        featurePrefix: 'IDENA', // Prefijo del nombre de la capa o capas a definir en la propiedad `featureType`.En caso de ser un WFS de GeoServer, se trata del nombre del espacio de trabajo (workspace).
			                        geometryName: 'the_geom', // Nombre del campo de la geometría.
			                        featureType: ['TOPONI_Txt_Toponimos'], // Colección con el nombre de la capa a consultar. Es posible indicar más de una capa si todas ellas cuentan con los campos definidos en `queryProperties`.
			                        dataIdProperty: ['CMUNICIPIO', 'CTOPONIMO'], // Colección con los nombres de los campos que nos servirán para identificar unívocamente a un topónimo. Los campos definidos deben existir en la capa o capas definidas en la propiedad `featureType`.
			                        queryProperties: { // Definición de los campos por los que filtrar la búsqueda de topónimo.
			                            firstQueryWord: ['TOPONIMO', 'TOPONINOAC'] // Campos en los que buscar el nombre del topónimo.
			                        },
			                        suggestionListHead: { // Configuración de la cabecera a mostrar en la lista de sugerencias. La cabecera consta de un literal y de un color. El literal indica el tipo de búsqueda y el color será el que mejor representa a las entidades correspondientes en el mapa.
			                            label: "search.list.placeName", // Clave del diccionario de traducciones que indica qué tipo de búsqueda es: Parcela Catastral, Municipio, Calle… en este caso Topónimo
			                            color: "fontColor" // Configuración para obtener el color que representa al tipo de búsqueda. Se establece como color la primera coincidencia en `styles` que cumpla con la configuración.
			                        }, // El resultado de la configuración anterior será: '#FF5722'.
			                        outputProperties: ['MUNICIPIO', 'TOPONIMO', 'CMUNICIPIO', 'CTOPONIMO'], // Colección con los nombres de los campos a mostrar (según el patrón indicando en `outputFormatLabel`) en la lista de sugerencias.
			                        outputFormatLabel: '{1} ({0})', // Cadena con el patrón a mostrar en la lista de sugerencias. Reemplaza el valor numérico (entre llaves) que corresponde con el índice de la colección `outputProperties` con el valor del campo.
			                        styles: [ // Colección de objetos de configuración de estilo. La relación entre capa y estilo se hace mediante el índice en la colección en `featureType` y en `styles`, por tanto, deberá haber tantas instancias como capas definidas en `featureType`.
			                            {
			                                point: { // Opciones de estilo de punto para los resultados obtenidos.
			                                    radius: 0, // Radio en píxeles del símbolo que representa el punto.
			                                    label: "TOPONIMO", // Nombre de campo del cual extraer el valor de la etiqueta.
			                                    labelRotationKey: "CADANGLE", // Nombre de campo del cual extraer la rotación a aplicar a la etiqueta.
			                                    fontColor: "#ff5722", // Color del texto de la etiqueta descriptiva del punto, representado en formato hex triplet (`#RRGGBB`).
			                                    fontSize: 14, // Tamaño de fuente del texto de la etiqueta descriptiva del punto en píxeles.
			                                    labelOutlineColor: "#FFFFFF", // Color del contorno del texto de la etiqueta descriptiva del punto, representado en formato hex triplet (`#RRGGBB`).
			                                    labelOutlineWidth: 4 // Anchura en píxeles del trazo del contorno del texto de la etiqueta.
			                                }
			                            }
			                        ]
			                    },
			                    cadastralParcel: false, // Desactivamos la búsqueda de parcelas catastrales.
			                    municipality: false, // Desactivamos la búsqueda de municipios.
			                    town: false, // Desactivamos la búsqueda de cascos urbanos.
			                    street: false, // Desactivamos la búsqueda de vías.
			                    postalAddress: false // Desactivamos la búsqueda de direcciones postales.
			                }
			            }
			        });
			    </script>

PostalAddressSearchOptions

Descripción

Opciones de configuración del origen de datos de la búsqueda de direcciones postales.

Propiedades
Nombre Type Atributos Valor por defecto Descripción
dataIdProperty Array.<string>

Colección con el nombre del campo o campos que nos servirán para identificar unívocamente a la dirección postal. Los campos definidos deben existir en la capa o capas definidas en la propiedad featureType.

featurePrefix string

Prefijo del nombre de la capa o capas a definir en la propiedad featureType. En caso de ser un WFS de GeoServer, se trata del nombre del espacio de trabajo (workspace).

featureType Array.<string>

Colección con el nombre de la capa o capas a consultar. Es posible indicar más de una capa si todas ellas cuentan con los campos definidos en queryProperties.

geometryName string

Nombre del campo de la geometría de la dirección postal.

outputFormat string <optional>
SITNA.Consts.format.JSON

Tipo de formato en el cual obtener los datos del servicio WFS. Valores admitidos: SITNA.Consts.format.JSON, SITNA.Consts.format.GML3, SITNA.Consts.format.GML32 o SITNA.Consts.format.GML.

outputFormatLabel string

Cadena con el patrón a mostrar en la lista de sugerencias. Reemplaza el valor numérico (entre llaves) que corresponde con el índice de la colección outputProperties con el valor del campo. Las llaves de cierre y apertura son necesarias.

Por ejemplo: outputProperties como [EntidadPoblacion, Via, Numero] y outputFormatLabel como “{1} {2}, {0}” para un resultado con valor del campo EntidadPoblacion a Pamplona, valor del campo Via a Calle Estafeta y valor del campo Numero a 13 mostrará en la lista resultados del tipo: Calle Estafeta 13, Pamplona.

outputProperties Array.<string>

Colección con los nombres de campos a mostrar (según el patrón indicando en outputFormatLabel) en la lista de sugerencias. Los campos indicados también se usan para controlar los posibles registros duplicados en la lista de sugerencias. Es decir, indicando código y nombre los resultados se agruparán por los 2 campos. Los campos definidos deben existir en la capa o capas definidas en la propiedad featureType.

queryProperties SearchQueryPropertyOptions

Definición de los campos por los que filtrar la búsqueda de direcciones postales.

En este tipo de búsqueda es obligatorio dar un valor a las siguientes propiedades:

  • firstQueryWord: se indicará el campo o campos (tipo string) en los que buscar el nombre de la entidad de población.
  • secondQueryWord: se indicará el campo o campos (tipo string) en los que buscar el nombre de la vía.
  • thirdQueryWord: se indicará el campo o campos (tipo string) en los que buscar el número de portal.
styles Array.<SITNA.layer.StyleOptions>

Colección de objetos de configuración de estilo. La relación entre capa y estilo se hace mediante el índice en la colección en featureType y en styles, por tanto, deberá haber tantas instancias como capas definidas en featureType.

No está disponible cluster.

suggestionListHead SearchSuggestionHeaderOptions

Configuración de la cabecera a mostrar en la lista de sugerencias. La cabecera consta de un literal y de un color. El literal indica el tipo de búsqueda y el color será el que mejor representa a las entidades correspondientes en el mapa.

url string

Dirección del servicio WFS (las búsquedas en API SITNA están implementadas sobre el estándar OGC Web Feature Service).

Ejemplos

			    <div id="mapa"></div>
			    <script>
			        var map = new SITNA.Map("mapa", {
			            controls: {
			                search: {
			                    placeHolder: 'Dirección postal', // Texto que se mostrará en el cajetín de búsqueda.
			                    instructions: 'Buscar dirección postal', // Texto que se mostrará como tooltip del botón buscar.
			                    postalAddress: { // Objeto de configuración del origen de datos en el cual buscar dirección postal.
			                        url: '//idena.navarra.es/ogc/wfs', // Dirección del servicio WFS (las búsquedas en API SITNA están implementadas sobre el estándar [OGC Web Feature Service](http://www.opengeospatial.org/standards/wfs).
			                        featurePrefix: 'IDENA', // Prefijo del nombre de la capa o capas a definir en la propiedad `featureType`.En caso de ser un WFS de GeoServer, se trata del nombre del espacio de trabajo (workspace).
			                        geometryName: 'the_geom', // Nombre del campo de la geometría.
			                        featureType: ['CATAST_Txt_Portal'], // Colección con el nombre de la capa a consultar. Es posible indicar más de una capa si todas ellas cuentan con los campos definidos en `queryProperties`.
			                        dataIdProperty: ['CMUNICIPIO', 'CENTIDADC', 'CVIA', 'PORTAL'],  // Colección con los nombres de los campos que nos servirán para identificar unívocamente a una dirección postal. Los campos definidos deben existir en la capa o capas definidas en la propiedad `featureType`.
			                        queryProperties: { // Definición de los campos por los que filtrar la búsqueda de dirección postal.
			                            firstQueryWord: ['ENTIDADC', 'ENTINOAC'], // Campos en los que buscar el nombre de la entidad de población.
			                            secondQueryWord: ['VIA', 'VIANOAC'], // Campos en los que buscar la vía.
			                            thirdQueryWord: ['PORTAL'] // Campo en el que buscar la dirección postal.
			                        },
			                        suggestionListHead: { // Configuración de la cabecera a mostrar en la lista de sugerencias. La cabecera consta de un literal y de un color. El literal indica el tipo de búsqueda y el color será el que mejor representa a las entidades correspondientes en el mapa.
			                            label: "search.list.number", // Clave del diccionario de traducciones que indica qué tipo de búsqueda es: Parcela Catastral, Municipio, Calle… en este caso Portal
			                            color: "fontColor" // Configuración para obtener el color que representa al tipo de búsqueda. Se establece como color la primera coincidencia en `styles` que cumpla con la configuración.
			                        }, // El resultado de la configuración anterior será: '#CB0000'.
			                        outputProperties: ['ENTIDADC', 'VIA', 'PORTAL', 'CVIA', 'CENTIDADC', 'CMUNICIPIO'], // Colección con los nombres de los campos a mostrar (según el patrón indicando en `outputFormatLabel`) en la lista de sugerencias.
			                        outputFormatLabel: '{1} {2}, {0}', // Cadena con el patrón a mostrar en la lista de sugerencias. Reemplaza el valor numérico (entre llaves) que corresponde con el índice de la colección `outputProperties` con el valor del campo.
			                        styles: [ // Colección de objetos de configuración de estilo. La relación entre capa y estilo se hace mediante el índice en la colección en `featureType` y en `styles`, por tanto, deberá haber tantas instancias como capas definidas en `featureType`.
			                            {
			                                point: { // Opciones de estilo de punto para los resultados obtenidos.
			                                    radius: 0, // Radio en píxeles del símbolo que representa el punto.
			                                    label: "PORTAL", // Nombre de campo del cual extraer el valor de la etiqueta.
			                                    labelRotationKey: "CADANGLE", // Nombre de campo del cual extraer la rotación a aplicar a la etiqueta.
			                                    fontColor: "#CB0000", // Color del texto de la etiqueta descriptiva del punto, representado en formato hex triplet (`#RRGGBB`).
			                                    fontSize: 14, // Tamaño de fuente del texto de la etiqueta descriptiva del punto en píxeles.
			                                    labelOutlineColor: "#FFFFFF", // Color del contorno del texto de la etiqueta descriptiva del punto, representado en formato hex triplet (`#RRGGBB`).
			                                    labelOutlineWidth: 4 // Anchura en píxeles del trazo del contorno del texto de la etiqueta.
			                                }
			                            }
			                        ]
			                    },
			                    cadastralParcel: false, // Desactivamos la búsqueda de parcelas catastrales.
			                    municipality: false, // Desactivamos la búsqueda de municipios.
			                    town: false, // Desactivamos la búsqueda de cascos urbanos.
			                    street: false // Desactivamos la búsqueda de vías.
			                }
			            }
			        });
			    </script>

PrintMapLegendOptions

Descripción

Opciones de leyenda para la impresión.

Propiedades
Nombre Type Atributos Valor por defecto Descripción
visible boolean <optional>
false

Determina si junto a la página del mapa se imprime una segunda página con la leyenda.

orientation string <optional>
"portrait"

Determina la orientación de la página de impresión que contiene la leyenda. Puede tomar el valor portrait (vertical) o landscape (horizontal).


PrintMapOptions

Descripción

Opciones de control de impresión.

Propiedades
Nombre Type Atributos Descripción
div HTMLElement | string <optional>

Elemento del DOM en el que crear el control o valor de atributo id de dicho elemento.

logo string <optional>

URL del archivo de imagen del logo a añadir a la hoja de impresión.

legend PrintMapLegendOptions <optional>

Opciones de configuración para mostrar la leyenda del mapa en una segunda página de impresión.


RoadMilestoneSearchOptions

Descripción

Opciones de configuración del origen de datos de la búsqueda de punto kilométrico de carretera.

Propiedades
Nombre Type Atributos Valor por defecto Descripción
dataIdProperty Array.<string>

Colección con el nombre del campo o campos que nos servirán para identificar unívocamente a un punto kilométrico de una carretera. Los campos definidos deben existir en la capa o capas definidas en la propiedad featureType.

featurePrefix string

Prefijo del nombre de la capa o capas a definir en la propiedad featureType. En caso de ser un WFS de GeoServer, se trata del nombre del espacio de trabajo (workspace).

featureType Array.<string>

Colección con el nombre de la capa o capas a consultar. Es posible indicar más de una capa si todas ellas cuentan con los campos definidos en queryProperties.

geometryName string

Nombre del campo de la geometría del punto kilométrico.

outputFormat string <optional>
SITNA.Consts.format.JSON

Tipo de formato en el cual obtener los datos del servicio WFS. Valores admitidos: SITNA.Consts.format.JSON, SITNA.Consts.format.GML3, SITNA.Consts.format.GML32 o SITNA.Consts.format.GML.

outputFormatLabel string

Cadena con el patrón a mostrar en la lista de sugerencias. Reemplaza el valor numérico (entre llaves) que corresponde con el índice de la colección outputProperties con el valor del campo. Las llaves de cierre y apertura son necesarias.

Por ejemplo: outputProperties como ['Carretera', 'PK'] y outputFormatLabel como “{0}: PK {1}” para un resultado con valor del campo Carretera a AP-15 y valor del campo PK a 10 mostrará en la lista resultados del tipo: AP-15: PK 10.

outputProperties Array.<string>

Colección con los nombres de campos a mostrar (según el patrón indicando en outputFormatLabel) en la lista de sugerencias. Los campos indicados también se usan para controlar los posibles registros duplicados en la lista de sugerencias. Es decir, indicando código y nombre los resultados se agruparán por los 2 campos. Los campos definidos deben existir en la capa o capas definidas en la propiedad featureType.

queryProperties SearchQueryPropertyOptions

Definición de los campos por los que filtrar la búsqueda de punto kilométrico.

En este tipo de búsqueda es obligatorio dar un valor a las siguientes propiedades:

  • firstQueryWord: se indicará el campo o campos (tipo string) en los que buscar el nombre de la carretera.
  • secondQueryWord: se indicará el campo o campos (tipo string) en los que buscar el número del punto kilométrico.
renderFeatureType Array.<string>

Colección con los nombres de las capas auxiliares a añadir al resultado de la búsqueda en el mapa. Es posible indicar más de una capa si todas ellas cuentan con los campos definidos en dataIdProperty.

No se muestran sugerencias en base a las capas auxiliares, únicamente se añade información en el momento de pintar en el mapa, es por ello que debe existir relación en los datos entre las capas definidas en featureType y renderFeatureType y que ambas cuenten con los campos definidos en dataIdProperty.

styles Array.<SITNA.layer.StyleOptions>

Colección de objetos de configuración de estilo. La relación entre capa y estilo se hace mediante el índice en las colecciones 1 y 2 siendo 1 la concatenación de featureType y renderFeatureType y 2 styles, por tanto, deberá haber tantas instancias como la suma de las capas definidas en featureType y en renderFeatureType.

No está disponible cluster.

suggestionListHead SearchSuggestionHeaderOptions

Configuración de la cabecera a mostrar en la lista de sugerencias. La cabecera consta de un literal y de un color. El literal indica el tipo de búsqueda y el color será el que mejor representa a las entidades correspondientes en el mapa.

url string

Dirección del servicio WFS (las búsquedas en API SITNA están implementadas sobre el estándar OGC Web Feature Service).

Ejemplos

			    <div id="mapa"></div>
			    <script>
			        var map = new SITNA.Map("mapa", {
			            controls: {
			                search: {
			                    placeHolder: 'Carretera, PK', // Texto que se mostrará en el cajetín de búsqueda.
			                    instructions: 'Buscar punto kilométrico de carretera',  // Texto que se mostrará como tooltip del botón buscar.
			                    roadmilestone: { // Objeto de configuración del origen de datos en el cual buscar punto kilométrico.
			                        url: '//idena.navarra.es/ogc/wfs', // Dirección del servicio WFS (las búsquedas en API SITNA están implementadas sobre el estándar [OGC Web Feature Service](http://www.opengeospatial.org/standards/wfs).
			                        featurePrefix: 'IDENA', // Prefijo del nombre de la capa o capas a definir en la propiedad `featureType`.En caso de ser un WFS de GeoServer, se trata del nombre del espacio de trabajo (workspace).
			                        geometryName: 'the_geom', // Nombre del campo de la geometría.
			                        featureType: ['INFRAE_Sym_CtraPK'], // Colección con el nombre de la capa a consultar. Es posible indicar más de una capa si todas ellas cuentan con los campos definidos en `queryProperties`.
			                        dataIdProperty: ['DCARRETERA', 'CPK'], // Colección con los nombres de campos que nos servirán para identificar unívocamente a un punto kilométrico. Los campos definidos deben existir en la capa o capas definidas en la propiedad `featureType`.
			                        queryProperties: { // Definición de los campos por los que filtrar la búsqueda de punto kilométrico.
			                            firstQueryWord: ['DCARRETERA'], // Campo en el que buscar el nombre de la carretera.
			                            secondQueryWord: ['PK'] // Campo en el que buscar el número del punto kilométrico.
			                        },
			                        suggestionListHead: { // Configuración de la cabecera a mostrar en la lista de sugerencias. La cabecera consta de un literal y de un color. El literal indica el tipo de búsqueda y el color será el que mejor representa a las entidades correspondientes en el mapa.
			                            label: "search.list.milestone.larger", // Clave del diccionario de traducciones que indica qué tipo de búsqueda es: Parcela Catastral, Municipio, Calle… en este caso Punto kilométrico
			                            color: "fontColor" // Configuración para obtener el color que representa al tipo de búsqueda. Se establece como color la primera coincidencia en `styles` que cumpla con la configuración.
			                        }, // El resultado de la configuración anterior será: '#00B2FC'.
			                        outputProperties: ['DCARRETERA', 'PK'], // Colección con los nombres de los campos a mostrar (según el patrón indicando en `outputFormatLabel`) en la lista de sugerencias.
			                        outputFormatLabel: 'Carretera: {0} ' + 'PK: {1}', // Cadena con el patrón a mostrar en la lista de sugerencias. Reemplaza el valor numérico (entre llaves) que corresponde con el índice de la colección `outputProperties` con el valor del campo.
			                        styles: [ // Colección de objetos de configuración de estilo. La relación entre capa y estilo se hace mediante el índice en la colección en `featureType` y en `styles`, por tanto, deberá haber tantas instancias como capas definidas en `featureType`.
			                            {
			                                point: { // Opciones de estilo de punto para los resultados obtenidos.
			                                    label: ["DCARRETERA", "PK"], // Colección de los nombres de los campos de los cuales extraer el valor de la etiqueta.
			                                    fontColor: "#00B2FC", // Color del texto de la etiqueta descriptiva del punto, representado en formato hex triplet (`#RRGGBB`).
			                                    fontSize: 14, // Tamaño de fuente del texto de la etiqueta descriptiva del punto en píxeles.
			                                    labelOutlineColor: "#ffffff", // Color del contorno del texto de la etiqueta descriptiva del punto, representado en formato hex triplet (`#RRGGBB`).
			                                    labelOutlineWidth: 2 // Anchura en píxeles del trazo del contorno del texto de la etiqueta.
			                                }
			                            }
			                        ]
			                    },
			                    cadastralParcel: false, // Desactivamos la búsqueda de parcelas catastrales.
			                    municipality: false, // Desactivamos la búsqueda de municipios.
			                    town: false, // Desactivamos la búsqueda de cascos urbanos.
			                    street: false, // Desactivamos la búsqueda de vías.
			                    postalAddress: false // Desactivamos la búsqueda de direcciones postales.
			                }
			            }
			        });
			    </script>

RoadSearchOptions

Descripción

Opciones de configuración del origen de datos de la búsqueda de carreteras.

Propiedades
Nombre Type Atributos Valor por defecto Descripción
dataIdProperty Array.<string>

Colección con el nombre del campo o campos que nos servirán para identificar unívocamente a una carretera. Los campos definidos deben existir en la capa o capas definidas en la propiedad featureType.

featurePrefix string

Prefijo del nombre de la capa o capas a definir en la propiedad featureType. En caso de ser un WFS de GeoServer, se trata del nombre del espacio de trabajo (workspace).

featureType Array.<string>

Colección con el nombre de la capa o capas a consultar. Es posible indicar más de una capa si todas ellas cuentan con los campos definidos en queryProperties.

geometryName string

Nombre del campo de la geometría de la carretera.

outputFormat string <optional>
SITNA.Consts.format.JSON

Tipo de formato en el cual obtener los datos del servicio WFS. Valores admitidos: SITNA.Consts.format.JSON, SITNA.Consts.format.GML3, SITNA.Consts.format.GML32 o SITNA.Consts.format.GML.

outputFormatLabel string

Cadena con el patrón a mostrar en la lista de sugerencias. Reemplaza el valor numérico (entre llaves) que corresponde con el índice de la colección outputProperties con el valor del campo. Las llaves de cierre y apertura son necesarias.

Por ejemplo: outputProperties como ['Carretera'] y outputFormatLabel como “{0}” para un resultado con valor del campo Carretera a N-121 mostrará en la lista resultados del tipo: N-121.

outputProperties Array.<string>

Colección con los nombres de campos a mostrar (según el patrón indicando en outputFormatLabel) en la lista de sugerencias. Los campos indicados también se usan para controlar los posibles registros duplicados en la lista de sugerencias. Es decir, indicando código y nombre los resultados se agruparán por los 2 campos. Los campos definidos deben existir en la capa o capas definidas en la propiedad featureType.

queryProperties SearchQueryPropertyOptions

Definición de los campos por los que filtrar la búsqueda de carreteras.

En este tipo de búsqueda es obligatorio dar un valor a la siguiente propiedad:

  • firstQueryWord: se indicará el campo o campos (tipo string) en los que buscar el nombre de la carretera.
renderFeatureType Array.<string>

Colección con los nombres de las capas auxiliares a añadir al resultado de la búsqueda en el mapa. Es posible indicar más de una capa si todas ellas cuentan con los campos definidos en dataIdProperty.

No se muestran sugerencias en base a las capas auxiliares, únicamente se añade información en el momento de pintar en el mapa, es por ello que debe existir relación en los datos entre las capas definidas en featureType y renderFeatureType y que ambas cuenten con los campos definidos en dataIdProperty.

styles Array.<SITNA.layer.StyleOptions>

Colección de objetos de configuración de estilo. La relación entre capa y estilo se hace mediante el índice en las colecciones 1 y 2 siendo 1 la concatenación de featureType y renderFeatureType y 2 styles, por tanto, deberá haber tantas instancias como la suma de las capas definidas en featureType y en renderFeatureType.

No está disponible cluster.

suggestionListHead SearchSuggestionHeaderOptions

Configuración de la cabecera a mostrar en la lista de sugerencias. La cabecera consta de un literal y de un color. El literal indica el tipo de búsqueda y el color será el que mejor representa a las entidades correspondientes en el mapa.

url string

Dirección del servicio WFS (las búsquedas en API SITNA están implementadas sobre el estándar OGC Web Feature Service).

Ejemplos

			    <div id="mapa"></div>
			    <script>
			        var map = new SITNA.Map("mapa", {
			            controls: {
			                search: {
			                    placeHolder: 'Carretera', // Texto que se mostrará en el cajetín de búsqueda.
			                    instructions: 'Buscar carretera', // Texto que se mostrará como tooltip del botón buscar.
			                    road: { // Objeto de configuración del origen de datos en el cual buscar carretera.
			                        url: '//idena.navarra.es/ogc/wfs', // Dirección del servicio WFS (las búsquedas en API SITNA están implementadas sobre el estándar [OGC Web Feature Service](http://www.opengeospatial.org/standards/wfs).
			                        featurePrefix: 'IDENA', // Prefijo del nombre de la capa o capas a definir en la propiedad `featureType`.En caso de ser un WFS de GeoServer, se trata del nombre del espacio de trabajo (workspace).
			                        geometryName: 'the_geom', // Nombre del campo de la geometría.
			                        featureType: ['INFRAE_Lin_CtraEje'],  // Colección con el nombre de la capa a consultar. Es posible indicar más de una capa si todas ellas cuentan con los campos definidos en `queryProperties`.
			                        dataIdProperty: ['DCARRETERA'], // Colección con el nombre del campo que nos servirá para identificar unívocamente a una carretera. Los campos definidos deben existir en la capa o capas definidas en la propiedad `featureType`.
			                        queryProperties: { // Definición de los campos por los que filtrar la búsqueda de carretera.
			                            firstQueryWord: ['DCARRETERA'] // Campo en el que buscar el nombre de la carretera.
			                        },
			                        suggestionListHead: { // Configuración de la cabecera a mostrar en la lista de sugerencias. La cabecera consta de un literal y de un color. El literal indica el tipo de búsqueda y el color será el que mejor representa a las entidades correspondientes en el mapa.
			                            label: "search.list.road", // Clave del diccionario de traducciones que indica qué tipo de búsqueda es: Parcela Catastral, Municipio, Calle… en este caso Carretera.
			                            color: "strokeColor" // Configuración para obtener el color que representa al tipo de búsqueda. Se establece como color la primera coincidencia en `styles` que cumpla con la configuración.
			                        }, // El resultado de la configuración anterior será: '#00B2FC'.
			                        outputProperties: ['DCARRETERA'], // Colección con los nombres de los campos a mostrar (según el patrón indicando en `outputFormatLabel`) en la lista de sugerencias.
			                        outputFormatLabel: 'Carretera: {0}', // Cadena con el patrón a mostrar en la lista de sugerencias. Reemplaza el valor numérico (entre llaves) que corresponde con el índice de la colección `outputProperties` con el valor del campo.
			                        styles: [ // Colección de objetos de configuración de estilo. La relación entre capa y estilo se hace mediante el índice en la colección en `featureType` y en `styles`, por tanto, deberá haber tantas instancias como capas definidas en `featureType`.
			                            {
			                                line: { // Opciones de estilo de línea para los resultados obtenidos.
			                                    strokeColor: "#00B2FC", // Color de trazo de la línea, representado en formato hex triplet (`#RRGGBB`).
			                                    strokeOpacity: 1, // Opacidad de trazo de la línea, valor de 0 a 1.
			                                    strokeWidth: 5, // Anchura de trazo en píxeles de la línea.
			                                    strokeLinecap: "round",
			                                    strokeDashstyle: "solid"
			                                }
			                            }
			                        ]
			                    },
			                    cadastralParcel: false, // Desactivamos la búsqueda de parcelas catastrales.
			                    municipality: false, // Desactivamos la búsqueda de municipios.
			                    town: false, // Desactivamos la búsqueda de cascos urbanos.
			                    street: false, // Desactivamos la búsqueda de vías.
			                    postalAddress: false // Desactivamos la búsqueda de direcciones postales.
			                }
			            }
			        });
			    </script>

SearchOptions

Descripción

Opciones de control de búsquedas. La configuración por defecto tiene como origen de datos el WFS de IDENA. Es posible establecer un origen de datos distinto en el que consultar, para ello en lugar de asignar un booleano a la propiedad, que activa o desactiva la búsqueda, se asignará un objeto con las propiedades a sobrescribir. Las propiedades a sobrescribir no siempre serán las mismas, variarán en función de la configuración que tenga la búsqueda que se quiera modificar.

Propiedades
Nombre Type Atributos Valor por defecto Descripción
div HTMLElement | string <optional>

Elemento del DOM en el que crear el control o valor de atributo id de dicho elemento.

cadastralParcel boolean | SITNA.control.CadastralSearchOptions <optional>
true

Esta propiedad activa/desactiva la búsqueda de parcelas catastrales en el buscador del mapa. Formato: municipio, polígono, parcela.

Para configurar un origen de datos distinto a IDENA, establecer como valor un objeto con el formato CadastralSearchOptions.

coordinates boolean <optional>
true

Esta propiedad activa/desactiva la localización de coordenadas en Sistema de Referencia ETRS89, bien UTM Huso 30 Norte (EPSG:25830) o latitud-longitud (EPSG:4258, EPSG:4326 o CRS:84) en el buscador del mapa.

instructions string <optional>
"Buscar municipio, casco urbano, calle, dirección, referencia catastral, coordenadas UTM o latitud-longitud"

Esta propiedad establece el atributo title del cajetín y del botón del buscador del mapa.

municipality boolean | SITNA.control.MunicipalitySearchOptions <optional>
true

Esta propiedad activa/desactiva la búsqueda de municipios en el buscador del mapa.

Para configurar un origen de datos distinto a IDENA, establecer como valor un objeto con el formato MunicipalitySearchOptions.

placeName boolean | SITNA.control.PlaceNameSearchOptions <optional>
false

Esta propiedad activa/desactiva la búsqueda de topónimos en el buscador del mapa.

Para configurar un origen de datos distinto a IDENA, establecer como valor un objeto con el formato PlaceNameSearchOptions.

placeNameMunicipality boolean | SITNA.control.PlaceNameMunicipalitySearchOptions <optional>
false

Esta propiedad activa/desactiva la búsqueda de topónimo en un municipio en el buscador del mapa. Formato: municipio, topónimo.

Para configurar un origen de datos distinto a IDENA, establecer como valor un objeto con el formato PlaceNameMunicipalitySearchOptions.

postalAddress boolean | SITNA.control.PostalAddressSearchOptions <optional>
true

Esta propiedad activa/desactiva la búsqueda de direcciones postales en el buscador del mapa. Formato: entidad de población, vía, portal.

Para configurar un origen de datos distinto a IDENA, establecer como valor un objeto con el formato PostalAddressSearchOptions.

road boolean | SITNA.control.RoadSearchOptions <optional>
false

Esta propiedad activa/desactiva la búsqueda de carreteras en el buscador del mapa.

Para configurar un origen de datos distinto a IDENA, establecer como valor un objeto con el formato RoadSearchOptions.

roadMilestone boolean | SITNA.control.RoadMilestoneSearchOptions <optional>
false

Esta propiedad activa/desactiva la búsqueda de punto kilométrico en una carretera en el buscador del mapa. Formato: carretera, pk.

Para configurar un origen de datos distinto a IDENA, establecer como valor un objeto con el formato RoadMilestoneSearchOptions.

street boolean | SITNA.control.StreetSearchOptions <optional>
true

Esta propiedad activa/desactiva la búsqueda de vías en el buscador del mapa.

Para configurar un origen de datos distinto a IDENA, establecer como valor un objeto con el formato StreetSearchOptions.

town boolean | SITNA.control.UrbanAreaSearchOptions <optional>
true

Esta propiedad activa/desactiva de cascos urbanos en el buscador del mapa.

Para configurar un origen de datos distinto a IDENA, establecer como valor un objeto con el formato UrbanAreaSearchOptions.

Ejemplos

<div id="mapa"></div>    
<script>
    // Creamos un mapa con el control de búsquedas. 
    // Configuramos el buscador desactivando la búsqueda de parcelas y la localización de coordenadas.
    // Indicamos un placeHolder y tooltip (propiedad "instructions") acorde con las búsquedas configuradas.
    var map = new SITNA.Map("mapa", {
        controls: {
            search: {
                coordinates: false,
                cadastralParcel: false,
                municipality: true,
                town: true,
                street: true,
                postalAddress: true,
                placeHolder: "Municipio, casco urbano, calle o portal",
                instructions: "Buscar municipio, casco urbano, calle o portal"
            }
        }
    });
</script>

SearchQueryPropertyOptions

Descripción

Opciones de configuración del origen de datos de una búsqueda.

Propiedades
Nombre Type Descripción
firstQueryWord Array.<string>

Colección de nombre de campo o campos a consultar para el 1º término del criterio de búsqueda, deben existir en la capa o capas definidas en la propiedad FeatureType.

secondQueryWord Array.<string>

Colección de nombre de campo o campos a consultar para el 2º término del criterio de búsqueda, deben existir en la capa o capas definidas en la propiedad FeatureType.

thirdQueryWord Array.<string>

Colección de nombre de campo o campos a consultar para el 3º término del criterio de búsqueda, deben existir en la capa o capas definidas en la propiedad FeatureType.


SearchResultColor

Descripción

Definición del color con el que se dibujará los resultados de la búsqueda en el mapa. Este color también se mostrará en la leyenda de la lista de sugerencias de resultados posibles de la búsqueda.

Propiedades
Nombre Type Descripción
css string

Nombre de la propiedad de los estilos de la cual extraer el color. Ha de ser alguna de las distintas propiedades de colores presentes en PointStyleOptions, PolylineStyleOptions o PolygonStyleOptions.

geomType string

Nombre del tipo de geometría (el valor es un miembro de SITNA.Consts.geom).

Ejemplos
color: {
    geomType: "point",
    css: "fontColor"
} 

SearchResultColorDictionary

Descripción

Algunas búsquedas hacen la consulta sobre varias capas. Este objeto define el color de los resultados de la búsqueda de cada capa. Estos colores también se mostrarán en la leyenda de la lista de sugerencias de resultados posibles de la búsqueda.

Propiedades
Nombre Type Descripción
color SearchResultColor

Configuración para obtener el color.

title string

Title para identificar al color. Se define con la clave del diccionario de traducciones. Revisar la sección Soporte multiidioma en Configurar por maquetación.

Ejemplos
CATAST_Pol_ParcelaUrba: {
    title: "search.list.cadastral.urban",
    color: {
        geomType: "polygon",
        css: "strokeColor"
    } 
}

SearchSuggestionHeaderOptions

Descripción

Opciones de configuración para la composición de la cabecera de una lista de sugerencias de búsqueda.

Propiedades
Nombre Type Descripción
label string

Clave del diccionario de traducciones que indica qué tipo de búsqueda es: Parcela Catastral, Municipio, Calle… Revisar la sección Soporte multiidioma en Configurar por maquetación.

color SearchResultColorDictionary | SearchResultColor | string

Configuración para obtener el color que representa al tipo de búsqueda. Se establece como color la primera coincidencia en styles que cumpla con la configuración.

La definición como string ha de ser para indicar el nombre de una propiedad presente en PointStyleOptions, LineStyleOptions o PolygonStyleOptions.

Ejemplos
{
    label: "search.list.town",
    color: "strokeColor"
}

StreetSearchOptions

Descripción

Opciones de configuración del origen de datos de la búsqueda de vías.

Propiedades
Nombre Type Atributos Valor por defecto Descripción
dataIdProperty Array.<string>

Colección con el nombre del campo o campos que nos servirán para identificar unívocamente a una vía. Los campos definidos deben existir en la capa o capas definidas en la propiedad featureType.

featurePrefix string

Prefijo del nombre de la capa o capas a definir en la propiedad featureType. En caso de ser un WFS de GeoServer, se trata del nombre del espacio de trabajo (workspace).

featureType Array.<string>

Colección con el nombre de la capa o capas a consultar. Es posible indicar más de una capa si todas ellas cuentan con los campos definidos en queryProperties.

geometryName string

Nombre del campo de la geometría de la vía.

outputFormat string <optional>
SITNA.Consts.format.JSON

Tipo de formato en el cual obtener los datos del servicio WFS. Valores admitidos: SITNA.Consts.format.JSON, SITNA.Consts.format.GML3, SITNA.Consts.format.GML32 o SITNA.Consts.format.GML.

outputFormatLabel string

Cadena con el patrón a mostrar en la lista de sugerencias. Reemplaza el valor numérico (entre llaves) que corresponde con el índice de la colección outputProperties con el valor del campo. Las llaves de cierre y apertura son necesarias.

Por ejemplo: outputProperties como [EntidadPoblacion, Via] y outputFormatLabel como “{1}, {0}” para un resultado con valor del campo EntidadPoblacion a Pamplona y valor del campo Via a Calle Estafeta mostrará en la lista resultados del tipo: Calle Estafeta, Pamplona.

outputProperties Array.<string>

Colección con los nombres de campos a mostrar (según el patrón indicando en outputFormatLabel) en la lista de sugerencias. Los campos indicados también se usan para controlar los posibles registros duplicados en la lista de sugerencias. Es decir, indicando código y nombre los resultados se agruparán por los 2 campos. Los campos definidos deben existir en la capa o capas definidas en la propiedad featureType.

queryProperties SearchQueryPropertyOptions

Definición de los campos por los que filtrar la búsqueda de vías.

En este tipo de búsqueda es obligatorio dar un valor a las siguientes propiedades:

  • firstQueryWord: se indicará el campo o campos (tipo string) en los que buscar el nombre de la entidad de población.
  • secondQueryWord: se indicará el campo o campos (tipo string) en los que buscar el nombre de la vía.
renderFeatureType Array.<string>

Colección con los nombres de las capas auxiliares a añadir al resultado de la búsqueda en el mapa. Es posible indicar más de una capa si todas ellas cuentan con los campos definidos en dataIdProperty.

No se muestran sugerencias en base a las capas auxiliares, únicamente se añade información en el momento de pintar en el mapa, es por ello que debe existir relación en los datos entre las capas definidas en featureType y renderFeatureType y que ambas cuenten con los campos definidos en dataIdProperty.

styles Array.<SITNA.layer.StyleOptions>

Colección de objetos de configuración de estilo. La relación entre capa y estilo se hace mediante el índice en las colecciones 1 y 2 siendo 1 la concatenación de featureType y renderFeatureType y 2 styles, por tanto, deberá haber tantas instancias como la suma de las capas definidas en featureType y en renderFeatureType.

No está disponible cluster.

suggestionListHead SearchSuggestionHeaderOptions

Configuración de la cabecera a mostrar en la lista de sugerencias. La cabecera consta de un literal y de un color. El literal indica el tipo de búsqueda y el color será el que mejor representa a las entidades correspondientes en el mapa.

url string

Dirección del servicio WFS (las búsquedas en API SITNA están implementadas sobre el estándar OGC Web Feature Service).

Ejemplos

			    <div id="mapa"></div>
			    <script>
			        var map = new SITNA.Map("mapa", {
			            controls: {
			                search: {
			                    placeHolder: 'Vía', // Texto que se mostrará en el cajetín de búsqueda.
			                    instructions: 'Buscar vía', // Texto que se mostrará como tooltip del botón buscar.
			                    street: { // Objeto de configuración del origen de datos en el cual buscar vía.
			                        url: '//idena.navarra.es/ogc/wfs', // Dirección del servicio WFS (las búsquedas en API SITNA están implementadas sobre el estándar [OGC Web Feature Service](http://www.opengeospatial.org/standards/wfs).
			                        featurePrefix: 'IDENA', // Prefijo del nombre de la capa o capas a definir en la propiedad `featureType`.En caso de ser un WFS de GeoServer, se trata del nombre del espacio de trabajo (workspace).
			                        geometryName: 'the_geom', // Nombre del campo de la geometría.
			                        renderFeatureType: ['CATAST_Txt_Calle'], // Colección con los nombres de las capas auxiliares a añadir al resultado de la búsqueda en el mapa. Es posible indicar más de una capa si todas ellas cuentan con los campos definidos en `dataIdProperty`. No se muestran sugerencias en base a las capas auxiliares, únicamente se añade información en el momento de pintar en el mapa, es por ello que debe existir relación en los datos entre las capas definidas en `featureType` y `renderFeatureType` y que ambas cuenten con los campos definidos en `dataIdProperty`.
			                        featureType: ['CATAST_Lin_CalleEje'], // Colección con el nombre de la capa a consultar. Es posible indicar más de una capa si todas ellas cuentan con los campos definidos en `queryProperties`.
			                        dataIdProperty: ['CVIA'], // Colección con el nombre del campo que nos servirá para identificar unívocamente a una vía. Los campos definidos deben existir en la capa o capas definidas en la propiedad `featureType`.
			                        queryProperties: { // Definición de los campos por los que filtrar la búsqueda de vía.
			                            firstQueryWord: ['ENTINOAC', 'ENTIDADC'], // Campo en el que buscar el nombre de la entidad de población.
			                            secondQueryWord: ['VIA', 'VIANOAC'] // Campo en el que buscar el nombre de la vía.
			                        },
			                        suggestionListHead: { // Configuración de la cabecera a mostrar en la lista de sugerencias. La cabecera consta de un literal y de un color. El literal indica el tipo de búsqueda y el color será el que mejor representa a las entidades correspondientes en el mapa.
			                            label: "search.list.street", // Clave del diccionario de traducciones que indica qué tipo de búsqueda es: Parcela Catastral, Municipio, Calle… en este caso Vía
			                            color: "strokeColor" // Configuración para obtener el color que representa al tipo de búsqueda. Se establece como color la primera coincidencia en `styles` que cumpla con la configuración.
			                        }, // El resultado de la configuración anterior será: '#CB0000'.
			                        outputProperties: ['ENTIDADC', 'VIA', 'CVIA', 'CENTIDADC', 'CMUNICIPIO'], // Colección con los nombres de los campos a mostrar (según el patrón indicando en `outputFormatLabel`) en la lista de sugerencias.
			                        outputFormatLabel: '{1}, {0}', // Cadena con el patrón a mostrar en la lista de sugerencias. Reemplaza el valor numérico (entre llaves) que corresponde con el índice de la colección `outputProperties` con el valor del campo.
			                        styles: [ // Colección de objetos de configuración de estilo. La relación entre capa y estilo se hace mediante el índice en la colección en `featureType` y en `styles`, por tanto, deberá haber tantas instancias como capas definidas en `featureType`.
			                            {
			                                line: { // Opciones de estilo de línea para los resultados obtenidos.
			                                    strokeColor: "#CB0000", // Color de trazo de la línea, representado en formato hex triplet (`#RRGGBB`).
			                                    strokeOpacity: 1, // Opacidad de trazo de la línea, valor de 0 a 1.
			                                    strokeWidth: 2, // Anchura de trazo en píxeles de la línea.
			                                    strokeLinecap: "round",
			                                    strokeDashstyle: "solid"
			                                }
			                            },
			                            {
			                                point: { // Opciones de estilo de punto para los resultados obtenidos.
			                                    label: "VIA", // Nombre de campo del cual extraer el valor de la etiqueta.
			                                    labelRotationKey: "CADANGLE", // Nombre de campo del cual extraer la rotación a aplicar a la etiqueta.
			                                    fontColor: "#000000", // Color del texto de la etiqueta descriptiva del punto, representado en formato hex triplet (`#RRGGBB`).
			                                    fontSize: 7, // Tamaño de fuente del texto de la etiqueta descriptiva del punto en píxeles.
			                                    labelOutlineColor: "#ffffff", // Color del contorno del texto de la etiqueta descriptiva del punto, representado en formato hex triplet (`#RRGGBB`).
			                                    labelOutlineWidth: 2 // Anchura en píxeles del trazo del contorno del texto de la etiqueta.
			                                }
			                            }
			                        ]
			                    },
			                    cadastralParcel: false, // Desactivamos la búsqueda de parcelas catastrales.
			                    municipality: false, // Desactivamos la búsqueda de municipios.
			                    town: false, // Desactivamos la búsqueda de cascos urbanos.
			                    postalAddress: false // Desactivamos la búsqueda de direcciones postales.
			                }
			            }
			        });
			    </script>

StreetViewOptions

Descripción

Opciones de control de StreetView.

Propiedades
Nombre Type Atributos Descripción
div HTMLElement | string <optional>

Elemento del DOM en el que crear el control o valor de atributo id de dicho elemento.

googleMapsKey string <optional>

El control de StreetView hace uso de la API de Google Maps para funcionar. Esta propiedad establece la clave de uso asociada al sitio donde está alojada la aplicación que usa la API SITNA. No es necesaria para hacer funcionar el control pero es recomendable obtener una para garantizar el servicio por parte de Google.

Puede obtener más información en el sitio para desarrolladores de Google.

viewDiv HTMLElement | string <optional>

Elemento del DOM en el que mostrar la vista de StreetView o valor de atributo id de dicho elemento.

Ejemplos

<div id="mapa"/>
<div id="sv"/>
<script>
    // Creamos un mapa con el control de StreetView.
    // La vista de StreetView se debe dibujar en el elemento con identificador "sv".
    // Se utilizará la clave de Google Maps para el SITNA.
    // (Solamente es válida en el sitio web del SITNA, está aquí a título de ejemplo).
    var map = new SITNA.Map("mapa", {
        controls: {
            streetView: {
                viewDiv: "sv",
                googleMapsKey: "AIzaSyDyXgqllcajbMjx8yQxEX28VgA9nQOhtCM"
            }
        }
    });
</script>

TabContainerOptions

Descripción

Opciones de un control que contiene pestañas de selección.

Propiedades
Nombre Type Atributos Valor por defecto Descripción
div HTMLElement | string <optional>

Elemento del DOM en el que crear el control o valor de atributo id de dicho elemento.

deselectableTabs boolean <optional>
false

Si se establece a true, las pestañas se pueden deseleccionar pulsando sobre ellas cuando ya estaban seleccionadas previamente.

Ejemplos

<script>
    // Establecemos un layout simplificado apto para hacer demostraciones de controles.
    SITNA.Cfg.layout = "layout/ctl-container";
    // Añadimos una capa WMS que tenga un WFS asociado del que poder descargar datos.
    SITNA.Cfg.workLayers = [
        {
            id: "cp",
            type: SITNA.Consts.layerType.WMS,
            url: "https://idena.navarra.es/ogc/wms",
            layerNames: ["IDENA:DIRECC_Pol_CodPostal"]
        }
    ];
    // Creamos un mapa con el control de descargas en el que se pueden deseleccionar las pestañas.
    var map = new SITNA.Map("mapa", {
        controls: {
            download: {
                div: "slot1",
                deselectableTabs: true
            }
        }
    });
</script>

UrbanAreaSearchOptions

Descripción

Opciones de configuración del origen de datos de la búsqueda de cascos urbanos.

Propiedades
Nombre Type Atributos Valor por defecto Descripción
dataIdProperty Array.<string>

Colección con el nombre del campo o campos que nos servirán para identificar unívocamente a un casco urbano. Los campos definidos deben existir en la capa o capas definidas en la propiedad featureType.

featurePrefix string

Prefijo del nombre de la capa o capas a definir en la propiedad featureType. En caso de ser un WFS de GeoServer, se trata del nombre del espacio de trabajo (workspace).

featureType Array.<string>

Colección con el nombre de la capa o capas a consultar. Es posible indicar más de una capa si todas ellas cuentan con los campos definidos en queryProperties.

geometryName string

Nombre del campo de la geometría del casco urbano.

outputFormat string <optional>
SITNA.Consts.format.JSON

Tipo de formato en el cual obtener los datos del servicio WFS. Valores admitidos: SITNA.Consts.format.JSON, SITNA.Consts.format.GML3, SITNA.Consts.format.GML32 o SITNA.Consts.format.GML

outputFormatLabel string

Cadena con el patrón a mostrar en la lista de sugerencias. Reemplaza el valor numérico (entre llaves) que corresponde con el índice de la colección outputProperties con el valor del campo. Las llaves de cierre y apertura son necesarias.

Por ejemplo: outputProperties como [NombreMunicipio, NombreCascoUrbano] y outputFormatLabel como “{1} ({0})” para un resultado con valor del campo NombreMunicipio a Galar y valor del campo NombreCascoUrbano a Salinas de Pamplona mostrará en la lista resultados del tipo: Salinas de Pamplona (Galar).

outputProperties Array.<string>

Colección con los nombres de campos a mostrar (según el patrón indicando en outputFormatLabel) en la lista de sugerencias. Los campos indicados también se usan para controlar los posibles registros duplicados en la lista de sugerencias. Es decir, indicando código y nombre los resultados se agruparán por los 2 campos. Los campos definidos deben existir en la capa o capas definidas en la propiedad featureType.

queryProperties SearchQueryPropertyOptions

Definición de los campos por los que filtrar la búsqueda de vías.

En este tipo de búsqueda es obligatorio dar un valor a la propiedad firstQueryWord: se indicará el campo o campos (tipo string) en los que buscar el nombre del casco urbano.

styles Array.<SITNA.layer.StyleOptions>

La relación entre capa y estilo se hace mediante el índice en la colección en featureType y en styles, por tanto, deberá haber tantas instancias como capas definidas en featureType.

No está disponible cluster.

suggestionListHead SearchSuggestionHeaderOptions

Configuración de la cabecera a mostrar en la lista de sugerencias. La cabecera consta de un literal y de un color. El literal indica el tipo de búsqueda y el color será el que mejor representa a las entidades correspondientes en el mapa.

url string

Dirección del servicio WFS (las búsquedas en API SITNA están implementadas sobre el estándar OGC Web Feature Service).

Ejemplos

			  <div id="mapa"></div>
			    <script>
			        var map = new SITNA.Map("mapa", {
			            controls: {
			                search: {
			                    placeHolder: 'Casco urbano', // Texto que se mostrará en el cajetín de búsqueda.
			                    instructions: 'Buscar casco urbano', // Texto que se mostrará como tooltip del botón buscar.
			                    town: { // Objeto de configuración del origen de datos en el cual buscar casco urbano.
			                        url: '//idena.navarra.es/ogc/wfs', // Dirección del servicio WFS (las búsquedas en API SITNA están implementadas sobre el estándar [OGC Web Feature Service](http://www.opengeospatial.org/standards/wfs).
			                        featurePrefix: 'IDENA', // Prefijo del nombre de la capa a definir en la propiedad `featureType`.En caso de ser un WFS de GeoServer, se trata del nombre del espacio de trabajo (workspace).
			                        geometryName: 'the_geom', // Nombre del campo de la geometría.
			                        featureType: ['ESTADI_Pol_EntidadPob'], // Colección con el nombre de la capa a consultar. Es posible indicar más de una capa si todas ellas cuentan con los campos definidos en `queryProperties`.
			                        dataIdProperty: ['CMUNICIPIO', 'CENTIDAD'], // Colección con los nombres de los campos que nos servirán para identificar unívocamente un casco urbano. Los campos definidos deben existir en la capa o capas definidas en la propiedad `featureType`.
			                        queryProperties: { // Definición de los campos por los que filtrar la búsqueda de casco urbano.
			                            firstQueryWord: ['ENTINOAC', 'ENTIDAD'] // Campos en los que buscar el nombre de casco urbano.
			                        },
			                        suggestionListHead: { //  Configuración de la cabecera a mostrar en la lista de sugerencias. La cabecera consta de un literal y de un color. El literal indica el tipo de búsqueda y el color será el que mejor representa a las entidades correspondientes en el mapa.
			                            label: "search.list.urban", // Clave del diccionario de traducciones que indica qué tipo de búsqueda es: Parcela Catastral, Municipio, Calle… en este caso Casco urbano.
			                            color: "strokeColor" // Configuración para obtener el color que representa al tipo de búsqueda. Se establece como color la primera coincidencia en `styles` que cumpla con la configuración.
			                        },  // El resultado de la configuración anterior será: '#FEBA1E'.
			                        outputProperties: ['MUNICIPIO', 'ENTIDAD'], // Colección con el nombre del campo a mostrar (según el patrón indicando en `outputFormatLabel`) en la lista de sugerencias.
			                        outputFormatLabel: '{1} ({0})', // Cadena con el patrón a mostrar en la lista de sugerencias. Reemplaza el valor numérico (entre llaves) que corresponde con el índice de la colección `outputProperties` con el valor del campo.
			                        styles: [ // Colección de objetos de configuración de estilo. La relación entre capa y estilo se hace mediante el índice en la colección en `featureType` y en `styles`, por tanto, deberá haber tantas instancias como capas definidas en `featureType`.
			                            {
			                                polygon: { // Opciones de estilo de polígono para los resultados obtenidos.
			                                    fillColor: '#000000', // Color de relleno, representado en formato hex triplet (`#RRGGBB`).
			                                    fillOpacity: 0.1, // Opacidad de relleno, valor de 0 a 1.
			                                    strokeColor: '#feba1e', // Color de trazo de los lados del polígono, representado en formato hex triplet (`#RRGGBB`).
			                                    strokeWidth: 2, // Anchura de trazo en de los lados del polígono.
			                                    strokeOpacity: 1 // Opacidad de trazo de los lados del polígono, valor de 0 a 1.
			                                }
			                            }
			                        ]
			                    },
			                    cadastralParcel: false, // Desactivamos la búsqueda de parcelas catastrales.
			                    street: false, // Desactivamos la búsqueda de vías.
			                    postalAddress: false // Desactivamos la búsqueda de direcciones postales.
			                }
			            }
			        });
			    </script>

WFSEditOptions

Descripción

Opciones del editor de capas WFS.

Si se desea que este control pueda funcionar en sesiones sin acceso a Internet, es necesario instalar en el ámbito de la aplicación que contiene el visor el Service Worker creado para el funcionamiento de este control en modo desconectado. Para ello basta con copiar el archivo tc-cb-service-worker.js a la carpeta raíz de dicha aplicación.

Propiedades
Nombre Type Atributos Valor por defecto Descripción
div HTMLElement | string <optional>

Elemento del DOM en el que crear el control o valor de atributo id de dicho elemento.

downloadElevation SITNA.ElevationOptions | boolean <optional>
false

Si se establece a un valor verdadero, el control ofrecerá la opción de añadir elevaciones a las geometrías cuando se descarguen las entidades.

highlightChanges boolean <optional>
true

Si se establece a un valor verdadero, se resaltarán en el mapa con estilo distintivo las entidades modificadas, con un estilo distinto según el tipo de edición (entidad añadida, modificada o eliminada).

showOriginalFeatures boolean <optional>
false

Si se establece a un valor verdadero, se mostrarán en el mapa las entidades modificadas junto con las mismas entidades antes de ser modificadas, para poder establecer comparaciones.

snapping boolean <optional>
true

Si se establece a un valor verdadero, la edición de geometrías tendrá un comportamiento en el que los vértices se "pegarán" y alinearán con otros vértices y aristas al acercarlos a ellos, a la manera de imanes.

styles SITNA.layer.StyleOptions <optional>

Opciones de los estilos de las entidades editadas, por tipo de geometría.

Ejemplos

<div id="mapa"></div>
<script>
    // Establecemos un layout simplificado apto para hacer demostraciones de controles.
    SITNA.Cfg.layout = "layout/ctl-container";
    // Añadimos el control multiFeatureInfo.
    SITNA.Cfg.controls.WFSEdit = {
        div: "slot1",
        downloadElevation: { // Si se desacargan las entidades, se ofrece la opción de añadirles elevaciones
            resolution: 20 // Si se interpolan puntos intermedios, por defecto se añadirán cada 20 metros
        }
    };
    // Añadimos una capa WMS sobre la que hacer las consultas.
    // El servicio WMS de IDENA tiene un servicio WFS asociado (imprescindible para consultas por línea o recinto).
    SITNA.Cfg.workLayers = [
        {
            id: "cp",
            type: SITNA.Consts.layerType.WMS,
            url: "https://idena.navarra.es/ogc/wms",
            layerNames: ["IDENA:PATRIM_Pol_Merindades"]
        }
    ];
    var map = new SITNA.Map("mapa");
</script>

WFSQueryOptions

Descripción

Opciones de control de consultas.

Algunos servidores tienen servicios WMS y WFS que actúan en paralelo, es decir, están alojados dentro del mismo nombre de host y publican las mismas capas. Si el control WFSQuery está en el mapa, verifica si las capas de servicios WMS están asociadas a un WFS paralelo. Si es así, ofrece un interfaz de usuario para poder hacer consultas a la capa en base a los valores de las propiedades de los elementos de la capa. Esta interfaz de usuario es accesible desde el control workLayerManager.

Propiedades
Nombre Type Atributos Descripción
styles SITNA.layer.StyleOptions <optional>

Opciones de estilo de las geometrías de las entidades resultado de la consulta.

highlightStyles SITNA.layer.StyleOptions <optional>

Opciones de estilo de las geometrías de las entidades resaltadas.

Ejemplos

<div id="mapa" />
<script>
    // Establecemos un layout simplificado apto para hacer demostraciones de controles.
    SITNA.Cfg.layout = "layout/ctl-container";
    // Añadimos el control de capas cargadas en la primera posición.
    SITNA.Cfg.controls.workLayerManager = {
        div: "slot1"
    };
    //Si se añade el control WFSQuery, el control busca un servicio WFS pareado al WMS de cada capa añadida al mapa y si lo encuentra habilita la lupa que da acceso al constructor de consultas.
    SITNA.Cfg.controls.WFSQuery = {
        //Establecemos el estilo de las geometrías de las entidades resultado de la consulta
        styles: {
            //Estilo de polígonos y multipolígonos
            polygon: {
                strokeColor: "#057f28",
                strokeWidth: 4,
                fillColor: "#057f28",
                fillOpacity: 0.3
            },
            //Estilo de polilíneas y multipolilíneas
            line: {
                strokeColor: "#057f28",
                strokeWidth: 4
            },
            //Estilo de puntos y multipuntos
            point: {
                strokeColor: "#057f28"
            }
        },
        //Establecemos el estilo de las geometrías de las entidades resaltadas
        highlightStyles: {
            //Estilo de polígonos y multipolígonos
            polygon: {
                strokeColor: "#ff7f27",
                strokeWidth: 4,
                fillColor: "#ff7f27",
                fillOpacity: 0.3
            },
            //Estilo de polilíneas y multipolilíneas
            line: {
                strokeColor: "#ff7f27",
                strokeWidth: 4
            },
            //Estilo de puntos y multipuntos
            point: {
                strokeColor: "#ff7f27"
            }
        }
    };
    var map = new SITNA.Map("mapa", {
        workLayers: [{
            id: "paisajes",
            title: "Paisajes singulares",
            type: SITNA.Consts.layerType.WMS,
            url: "//idena.navarra.es/ogc/wms",
            layerNames: "IDENA:BIODIV_Pol_PaisajesSing"
        },
        {
            id: "meteorologia",
            title: "Meteorología",
            type: SITNA.Consts.layerType.WMS,
            url: "//idena.navarra.es/ogc/wms",
            layerNames: "IDENA:estacMeteor"
        },
        {
            id: "plazaola",
            title: "Vía Verde del Plazaola",
            type: SITNA.Consts.layerType.WMS,
            url: "//idena.navarra.es/ogc/wms",
            layerNames: "IDENA:DOTACI_Lin_VVPlazaola"
        }]
    });
</script>