84
1 CURSO SOBRE SERVIDORES DE MAPAS Y VISORES CARTOGRÁFICOS PARA DESARROLLO DE ATLAS Lima-Perú, 3-5 de mayo de 2011 INFORME DEL CURSO

Informe de Curso Atlas. Preliminar - cpps.dyndns.infocpps.dyndns.info/cpps-docs-web/planaccion/docs2012/febrero/XVIII... · 2 1. INTRODUCCIÓN Esta actividad se desarrolló en el

  • Upload
    buinhu

  • View
    217

  • Download
    0

Embed Size (px)

Citation preview

1  

 

 

 

CURSO SOBRE SERVIDORES DE MAPAS Y VISORES CARTOGRÁFICOS PARA DESARROLLO DE ATLAS

Lima-Perú, 3-5 de mayo de 2011

INFORME DEL CURSO

2  

1. INTRODUCCIÓN

Esta actividad se desarrolló en el marco del Proyecto "Red de Información y Datos del Pacífico Sur para el Apoyo a la Gestión Integrada del Área Costera (SPINCAM). EI Proyecto SPINCAM fue considerado como prioritario por la XVII Reunión de la Autoridad General, y mediante Decisión No. 8 donde se encomendó a la Secretaría Ejecutiva, instruir a los Puntos Focales del Proyecto SPINCAM, a implementar las decisiones de la Tercera Reunión del Comité Directivo SPINCAM, realizada en noviembre de 2010 en Santa Marta, Colombia.

Este curso se llevó a cabo gracias al apoyo financiero de la IODE - Comisión Oceanográfica Intergubernamental (COI), quien propuso durante la Tercera Reunión del Comité Directivo, fortalecer capacidades técnicas en la región sobre elaboración de Atlas.

2. OBJETIVOS DEL CURSO

Fortalecer las iniciativas SPINCAM en atlas nacionales y el atlas regional.

Implementar la presentación de datos y estructura de metadatos acordada durante el Taller regional, llevado a cabo en marzo de 2011 en la ciudad de Guayaquil, Ecuador.

3. LUGAR Y FECHA DEL CURSO

Lugar: Lima-Instituto del Mar del Perú (IMARPE)

Fecha: 3-5 de mayo de 2011

4. PARTICIPANTES

En el curso participaron 27 personas incluyendo delegados de los Puntos Focales Nacionales y Técnicos del Proyecto SPINCAM, coordinador de ODINCARSA, experto de la Universidad de Sevilla, delegados de la CPPS y representantes de instituciones peruanas invitadas al evento. La lista completa de participantes se incluye como Anexo 1. 5. ADOPCIÓN DE LA AGENDA La agenda fue adoptada, aunque se consideraron los tiempos de acuerdo al desarrollo en cada módulo o tema. La agenda del curso está en el Anexo 2. 6. APERTURA DEL CURSO

En una breve intervención el Alm. Jorge Brousset, Presidente del IMARPE expresó sus palabras de bienvenida e inauguración del curso.

Posteriormente, la representante del Plan de Acción de la Comisión Permanente del Pacífico Sur, Magaly Valencia, intervino para presentar al Ing. Giovanni Tapia, quien es el profesional que apoyará técnicamente en el desarrollo del Atlas Regional.

3  

El coordinador de ODINCARSA, Sr. Ariel Troisi, sintetizó las discusiones y decisiones del Taller Regional para adoptar una estructura de metadata y parámetros estándares, desarrollado del 1 al 3 de marzo, en Guayaquil, Ecuador. Y además resaltó la necesidad de avanzar con los compromisos adquiridos, considerando que la primera fase del proyecto SPINCAM llega a su fin a finales de éste año.

El desarrollo del Curso estuvo a cargo del Profesor de la Universidad de Sevilla, Juan Pedro Pérez Alcántara, quien tiene una vasta experiencia en servidores de mapas y visores cartográficos.

7. PRESENTACIONES DE LOS PAÍSES SOBRE ESTADO DE AVANCE DE LAS ACTIVIDADES

Los delegados de cada país hicieron una presentación indicando el avance respecto a la carga de metadatos, intercambio con el nodo SPINCAM-CPPS y desarrollo de indicadores regionales. En Anexo 3 se encuentran las matrices sobre el estado de indicadores regionales en cada país.

Presentación de Chile

Sobre el estado de avance en la carga de metadatos, en estos momentos está listo el Indicador Regional de Áreas Marino Costeras Protegidas y se encuentra incorporado en la página virtual de SPINCAM. El intercambio con el nodo SPINCAM-CPPS, está aún por definirse. Presentación de Colombia A nivel del indicador regional que está liderando Colombia (calidad de aguas marinas y costeras), se está desarrollando una metodología intensiva de revisión bibliográfica de ICA’s (Índices de Calidad de Aguas), censos y encuestas entre los países miembros para la identificación, categorización y ponderación de variables homogéneas a todos los países. A nivel de avances técnicos, hay un avance grande en el diligenciamiento de los metadatos regionales y nacionales, estamos en la etapa de trasladar los metadatos al servidor de producción para su publicación y compartimiento con CPPS. Presentación de Ecuador

El Centro Ecuatoriano de Datos Marinos Costeros está fortaleciendo la infraestructura con la que se integrará su nodo para la presentación del proyecto SPINCAM para lo cual se ha generado 4 proyectos:

• Migración del cableado a redes Vlan`s lo que permitirá mejorar la taza de transferencia de la información para el proyecto

• Implementación de un Data Center para fortalecer los servicios de los sistemas de información y repotenciación de T.I

• Generacion de plantillas para la estandarización de los datos aplicando normativas locales, regionales e internacionales, que implican también la colocación de banderas de calidad y las normas ISO.

4  

• Proyecto de implementación de GEOPROTAL con bases de datos geoespaciales. Estado del Metadatos de indicadores regionales • Se subió a la oficina virtual del Proyecto el metadato referente al indicador Áreas

Protegidas del Pacífico Sudeste, no se ha recibido comentarios al respecto. • Se terminó la descripción de los campos del indicador, con los comentarios de

Chile y Colombia.

Presentación de Panamá

Se están llevando a cabo algunas actividades referentes a:

1. El Análisis de parámetros para la formulación del indicador de densidad de población, de acuerdo a:

a. División político administrativa de cada país (2º nivel) para identificar / homologar criterios de unidad espacial de referencia.

b. Frecuencia de elaboración de los censos (años en que se hace/hizo) y proyecciones. c. Definir año base de inicio de reporte del indicador regional. d. Definir algoritmo de clasificación a partir d muestras reales de máximos y mínimos

poblacionales de todos los países. e. La representación se hace a nivel de Unidad Espacial Referencia de 2º nivel

“costeras”. f. Modificar/actualizar la ficha técnica del indicador regional. g. Definir el catálogo de datos para el indicador regional (planilla con nombres y

características de las columnas del shapefile). 2. A nivel de metadatos:

a. Instalación y personalización del GeoNetwork en el servidor de producción. b. Terminar de diligenciar los metadatos de los 5 indicadores regionales a partir de la

plantilla SPINCAM. c. Ejecutar las pruebas de interoperabilidad de nodos con CPPS.

3. A nivel del atlas a. Preparar los shapefile para los indicadores que tienen claro el catalogo de datos

(AMP y Densidad poblacional). b. Concluido el curso, instalar y dejar en funcionamiento, la infraestructura técnica

para servir los WMS. La delegada de Panamá manifestó que se está haciendo todo lo posible para cumplir con el proyecto y ponerse al día. Muestra de ello es la pasantía que realizaron en Colombia para poner a los técnicos al día sobre el proyecto, la existencia de una oficina que va ser depositario de los datos (El Centro de Control Pesquero y Geomática), además se adquirirá un servidor para la recepción de los datos. En cuanto a los indicadores nacionales se está trabajando en ellos. Para el indicador regional de Población, se requiere de la información de los otros países faltantes (Chile, Perú y Ecuador) para poder avanzar.

5  

Presentación de Perú En cuanto al estado de avance del desarrollo de los metadatos para el proyecto SPINCAM en el Perú se ha activado el nodo Geonetwork en el servidor de la Dirección de Hidrografía y Navegación (DHN) punto focal IODE y se puede acceder en la siguiente dirección : http://200.60.53.149:8080/geonetwork Se ha trabajado estrechamente con el Comité Coordinador de la Infraestructura de Datos Espaciales del Perú (CCIDEP) para que el perfil nacional de metadatos del proyecto SPINCAM cumpla con los estándares nacionales fijados por dicho Comité. El Perfil Nacional de metadatos para el proyecto SPINCAM está en vía de ser norma nacional para que las instituciones realicen sus metadatos estandarizados de su información. Aun así ya se sabe que el perfil de metadatos para el proyecto cumple con los estándares nacionales. Sobre el estado de avance en el desarrollo de los Indicadores regionales, se tienen identificadas y se han hecho las coordinaciones necesarias con las instituciones proveedoras de la información para los Indicadores regionales: Diversidad (Abundancia de especies clave) - IMARPE Calidad de agua – IMARPE Áreas Marinas Protegidas – Servicio Nacional de de Áreas Naturales Protegidas (SERNANP) Densidad Poblacional – Instituto Nacional de Estadística e Informática (INEI) Herramientas de planificación marina-costera (MINAM). Se tiene los datos “shape” de Áreas Marinas Protegidas en Perú pero falta actualización por lo que ya se ha pedido oficialmente a SERNANP el dato con las últimas aéreas protegidas decretadas el año 2010. 8. DESARROLLO DEL CURSO Martes, 3 de mayo (9:30 – 18: 00)

Módulo 1. Introducción a los servicios de mapas OGC: Introducción a servidores y a servicios OGC

Introducción a los servidores de mapas Open Source En ingeniería de software servidor es un término polisémico, que puede hacer referencia a las máquinas especializadas en ejecutar aplicaciones servidoras que ofrecen servicios a otras máquinas bajo petición, así como también puede hacer referencia a programas especializados en realizar tareas bajo demanda de otros programas y servir de vuelta el resultado de dichas operaciones. Por otro lado el cliente también es considerado un término polisémico que hacer referencia a las máquinas que ejecutan aplicaciones cliente que se conectan a máquinas servidoras donde se ejecutan programas servidores que les proporcionan servicios o programas que tienen la capacidad de conectarse a programas servidores para demandarles servicios (información, procesamiento de datos, etc.) y recibir el resultado de sus procesos.

6  

Una arquitectura cliente-servidor no implica una separación física en máquinas diferentes del programa cliente y el programa servidor, aunque con frecuencia sea así. Los programas clientes se conectan a los programas servidores, hacen una petición de servicio, la gestionan y devuelven el resultado, proporcionando ventajas notables como: Reutilización: los servidores pueden ser utilizados por muchos clientes diferentes,

siempre que sepan éstos como realizar las peticiones, gracias a un protocolo de comunicación conocido tanto por el cliente como por el servidor.

Encapsulamiento: los clientes realizan sus peticiones y reciben la información de los

servidores según un protocolo que deben conocer, pero más allá de eso, no tiene por qué saber nada de cómo realiza su tarea el servidor.

Existe primero un mecanismo de transmisión y recepción de datos, que es lo más pegado al hardware de la máquina. Los más utilizados son TCP y UDP. Para el mecanismo de transmisión y recepción de datos se encuentra el protocolo de comunicación genérica, que existen muchos y con muchísimas características propias y distintas. Ejemplos de estos protocolos son el HTTP, el FTP, el SSH o Telnet. En el protocolo de comunicación se establece un protocolo de aplicación, que debe ser conocido tanto por la aplicación servidora como por la aplicación cliente. Este protocolo se utiliza para realizar peticiones a un servicio concreto y transmitir los resultados de forma que la aplicación cliente pueda interpretarlos. Por ejemplo, WMS, WFS o SOAP son protocolos de aplicaciones. Las aplicaciones servidoras, típicamente, escuchan en lo que se denomina un puerto TCP de la máquina en la que residen. Las aplicaciones clientes se conectan al puerto TCP de la aplicación servidora, realizan su petición y esperan la respuesta. Por ejemplo, el puerto más utilizado, el de los servidores web, es el puerto 80. Estándares OGC (Open Geospatial Consortium) El OGC define estándares de intercambio y publicación de datos geográficos en entornos distribuidos cliente - servidor.

WFS (Web Feature Service): estándar de transmisión de datos vectoriales. El servidor sirve la información geográfica en forma de vectores.

WCS (Web Coverage Service): estándar de transmisión de datos raster. El servidor sirve la información geográfica en formato raster.

WMS (Web Map Service): estándar que usualmente se apoya en los dos anteriores. El servidor sirve cartografía ya diseñada semiológicamente a partir de información de partida vectorial o raster en forma de imagen (JPEG, PNG, TIFF, etc.).

Módulo 2. Introducción a MapServer: Instalación en Windows. Arquitectura de base. Filosofía de trabajo con MapServer. Estructura básica de un servicio. Sintaxis básica del fichero MapFile (map).MapServer.

Es una aplicación servidora de servicios cartográficos que puede comportarse según los estándares OGC, pero no necesariamente. Y se ejecuta dentro de un servidor web Apache como programa CGI. Además, genera cartografía a partir de archivos de

7  

configuración .map y datos geográficos (shapes, GeoTIFF, bases de datos geográficas como PostGIS u Oracle Locator / Spatial, etc.) en formato de imagen. De manera que el cliente (aplicaciones web o de escritorio) hace peticiones al servidor y recibe las imágenes.

Aplicaciones de WMS

1. WMS: Acceso desde Quantum GIS Es necesario instalar Quantum GIS 1.6.0 Copiapó, para establecer la conexión al servidor WMS, e introducir los datos del servidor al que se quiere conectar, mediante un nombre identificativo y la URL, que es la raíz del servicio.

2. WMS: Acceso desde ArcGIS En GIS Servers, seleccionamos Add WMS Server e introducimos la raíz del WMS, utilizando la herramienta Get Layers se cargarán las capas del WMS, pudiendo seleccionar la que se requiera, además en la parte derecha aparecerán los metadatos de la capa.

3. WMS: Acceso directo Se usó como ejemplo el servicio WMS de la REDIAM gestionando la petición y adquisición de la imagen. Obteniendo el siguiente esquema:

8  

Métodos en WMS

1. El GetCapabilities:

Es el método que poseen todos los servicios WMS que proporciona una descripción de sí mismo y la información que contiene. El servicio es llamado con su raíz y a su método GetCapabilities a través del protocolo HTTP (protocolo seguido por, por ejemplo, los exploradores de Internet), igual al trabajo en una página web. El formato de entrega es un XML con toda la información acerca del servicio y cómo adquirir la información que contiene.

2. El GetMap y el GetFeatureInfo

GetMap: Método que poseen todos los servicios WMS que proporciona un mapa en forma de imagen, se llama al servicio con su raíz y a su método GetMap a través del protocolo HTTP. Anatomía de la petición GetMap ● Raíz del servicio WMS: http://www.ideandalucia.es/wms/ortofoto2007? ● Servicio requerido, versión y request del servidor ● Sistema de coordenadas requerido y Bounding Box de visualización ● Parámetros de la imagen (Tamaño, format, transparencia) ● Capas requeridas (la capa que se debe hacer el mapa): LAYERS=oca10_2007 Notas importantes:

Diseño por default Codificación de la imagen PNG2 4 Sistema de Referencia de Coordenadas WGS84 (sistema de referencia

geográfica) La rapidez de la generación del mapa depende de la conexión.

9  

WMS: El GetFeatureInfo GetFeatureInfo: Es el Método que poseen los servicios WMS que proporciona una información sobre un punto de una capa que sirve. Se pide llamando al servicio con su raíz y a su método GetFeatureInfo a través del protocolo HTTP. La petición requiere especificar un mapa, como en el caso del método GetMap, con la salvedad de que hay que especificar de qué capa se quiere recibir la información (QUERY_LAYERS) y la coordenada en píxeles de la imagen sobre la que se quiere consultar (X e Y); El formato de entrega es variable, aunque suele funcionar normalmente en las aplicaciones web como una redirección a una página web con la información. Se realizó un ejemplo para obtener el mapa del catastro de España. Instalación de MapServer en Windows: stack tecnológico y tool chain Se instalaron programas necesarios como el Notepad ++ para la edición de los ficheros de configuración y el bundle ms4w, versión 3.0.2., despliegue en Windows que instala Apache con MapServer, junto con un buen número de librerías e información adicional interesante. El stack tecnológico resulta en:

Servidor: Apache con PHP y MapServer, apoyado por múltiples librerías geomáticas Open Source como GDAL, OGR, GEOS y Proj4. Sobre este Apache se pueden utilizar frameworks PHP como CodeIgniter.

Cliente: aplicación web visible en un navegador y construida con HTML, CSS y JavaScript. Con todo ello funciona OpenLayers, que es un visor 100% JavaScript. También están los clientes SIG Desktop pesados como Quantum.

La tool chain es:

SIG Desktop: ArcGIS o Quantum para editar y preparar los shapes y los raster, tanto a nivel alfanumérico como geométrico.

Notepad++: para editar los ficheros .map y la aplicación web. Quantum GIS: para hacer pruebas del servicio WMS. Explorador web: para probar la aplicación web.

MapServer: Ficheros .map Los ficheros con extensión .map, son el núcleo de la configuración de los servicios de MapServer, son ficheros de texto plano, y no son XML. Hay que prestar mucha atención al encoding de dicho fichero según se vaya a trabajar en Windows o Linux, especialmente en ambientes de desarrollo – despliegue, mixtos. En los ficheros .map:

se definen los datos que sirve el servidor cartográfico; se define la semiología de dichos datos; se definen los metadatos que describen los servicios.

Los .map:

10  

Son configurados inicialmente a la manera de MapServer (no OGC) y pueden ser modificados posteriormente para ser compatibles con los estándares WMS y WFS del OGC. Los pasos detallados de cada instalación, se encuentran en Anexo 4. Ejemplos y Ejercicios Durante el curso de impartieron los siguientes ejemplos y su desarrollo se encuentra en Anexo 5:

Ejemplo 1: Configuración de una capa vectorial Ejemplo 2: Configuración de dos capas vectoriales como WMS Ejemplo 3: Configuración del GetFeatureInfo Ejemplo 4: Múltiples proyecciones en un .map Ejemplo 5: Clasificaciones temáticas Ejemplo 6: Simbología avanzada Ejemplo 7: Etiquetas de toponímia Ejemplo 8: Capas raster Ejemplo 9: Capas WMS en cascada

Módulo 3. Arquitecturas centralizadas y descentralizadas Configuración de la URL del WMS en MapServer Según el estándar WMS, el parámetro map=c:/mapserver_data/mapfiles/atlas09.map no es estándar. Sin embargo, Apache permite utilizar una técnica de redireccionamiento que tendrá en cuenta automáticamente el parámetro map y que deja una URL del servicio WMS mucho más limpia y estandarizada. Módulo 4. Introducción a tecnologías web y a OpenLayers. Introducción básica a conceptos web y al framework OpenLayers.Instalación de un ejemplo. La explicación de éste módulo se lo realizó por medio del ejemplo 8. Módulo 5. Configuración y ejemplos de despliegue de OpenLayers. Configuración de OpenLayers, personalización. Ejemplos de despliegue. La explicación de éste módulo se lo realizó por medio del ejemplo 9. Módulo 6. OpenLayers dinámico con tecnologías de servidor, concretamente PHP. Debido al corto del tiempo y al interés de realizar un ejercicio con los datos de cada país sobre AMCP´s el módulo 6 no fue abordado. 9. EJERCICIO EN GRUPO: INDICADOR REGIONAL. ÁREAS MARINAS COSTERAS PROTEGIDAS AMCP´s Se solicitó a los delegados:

Analizar la información de AMCP´s de cada uno de sus países. Crear su servidor WMS para que CPPS se alimente de la información y proyecte

los shapefiles en Quantum.

Los comentarios emitidos durante el desarrollo del ejercicio fueron: Es necesario acordar colores, símbolos, fuentes. En los catálogos de datos hay que especificar, los campos, atributos. Concertar el nombramiento de capas para evitar usar nombres diferentes.

11  

Hacer una plantilla Cabecera .map, vacía (uniformadas las layers, clases, símbolos, fuentes, cartografía base).

Los países serán los encargados de enviar las layers a CPPS.

10. CONCLUSIONES Y RECOMENDACIONES Conclusiones: Es importante señalar que puede haber dos escenarios para el desarrollo del Atlas Regional:

Caso 1: Los países no pueden servir un WMS: Será necesario preparar una plantilla, bloque layer para que CPPS solo haga un “include”

Caso 2: Los países puedan servir un WMS (función de Nodo proveedor): El

cual se actualizaría automáticamente por CPPS. Recomendaciones:

1. Tener en cuenta las discusiones sobre elaboración del Atlas Regional surgidas durante el Taller Regional para adoptar una estructura de metadata y parámetro estándares para la Evaluación del Estado de la Costa, realizado en Guayaquil, en el mes de marzo.

2. Para el Atlas Regional es importante diseñar una biblioteca de símbolos para que hacer los “includes” y así se use la misma simbología.

3. Para el Atlas regional podría aplicarse, clasificaciones temáticas (CLASSITEM).

4. Para el diseño de página web del Atlas es recomendable hacerlo en el estándar

ISO 960 que permite que los diseñadores e ingenieros puedan trabajar conjuntamente, ahorrando tiempo y esfuerzo.

5. Definir qué base cartográfica se va a usar y en qué escala.

6. Considerar que la toponimia a usar debe ser común para los países en la región.

7. Establecer parámetros para los atributos de acuerdos a normas internacionales.

8. Conformar un grupo de trabajo para la elaboración del atlas que tengan reuniones

semanales para el intercambio de experiencias, por medio de herramientas de comunicación como mail, Windows life Messenger o Skype.

9. Considerar tener un prototipo de Atlas para la Reunión Regional sobre productos

de Atlas y repositorios. (Julio- Agosto).

10. Intercambiar con Colombia las experiencias adquiridas en el desarrollo del Geovisor SIAM (http://geoportal.invemar.org.co/?q=node/4) que ha utilizado las mismas herramientas impartidas en este Curso.

12  

11. CLAUSURA Y ENTREGA DE CERTIFICADOS En una breve ceremonia el Sr. Marco Antonio Espino Sánchez, en representación del Presidente del IMARPE, dio por clausurado el Curso, no sin antes felicitar a los participantes por su motivación, así como, al apoyo dado por el Sr. Ariel Troisi, Coordinador de ODINCARSA, a la CPPS y a los conocimientos impartidos por el experto Juan Pedro Pérez de la Universidad de Sevilla. Adicionalmente la Srta. Magaly Valencia, asistente técnica del Plan de Acción (CPPS) y el Sr. Ariel Troisi manifestaron su agradecimiento a IMARPE por el apoyo logístico para el desarrollo del Curso. Finalmente se procedió a la entrega de certificados a los delegados participantes. 12. AGRADECIMIENTOS Nuestro agradecimiento a la delegación de Chile, conformada por las especialistas Cynthia Pizarro y Claudia Muñoz, así como, al Sr. Giovanni Tapia delegado de la Comisión Permanente del Pacífico Sur, por contribuir con sus valiosos apuntes y comentarios para la generación de los Anexos 4 y 5 del presente informe.

13  

ANEXO 1

LISTA DE PARTICIPANTES

14  

CURSO SOBRE SERVIDORES DE MAPAS Y VISORES CARTOGRÁFICOS PARA DESARROLLO DE ATLAS

Lima-Perú, 3-5 de mayo de 2011

LISTA DE PARTICIPANTES CHILE Nombre : Cynthia Andrea Pizarro Retamales Institución : Unidad técnica Cartográfica. Subsecretaría para las Fuerzas

Armadas. Ministerio de Defensa Cargo : Cartógrafo Dirección : Villavicencio 364, Santiago Teléfono : (562) 7266708 E-mail : [email protected] Nombre : Claudia Andrea Muñoz Flández Institución : Subsecretaría para las Fuerzas Armadas, Ministerio de Defensa Cargo : Ingeniero en Informática encargada de portales web Dirección : Villavicencio 364, Santiago Teléfono : (562) 6330027 Fax : (56-9) 9181528 E-mail : [email protected] COLOMBIA Nombre : Julián José Pizarro Pertuz Institución : INVEMAR Cargo : Investigador Auxiliar II. Laboratorio de Sistemas de Información Dirección : Cerro Punta Betin. Soc. Portuaria, Santa Marta Teléfono : 575) 4328600 Ext. 119 E-mail : [email protected] Nombre : Leonardo José Arias Alemán Institución : INVEMAR Cargo : Investigador Asistente II. Línea de Análisis Integrado de Información. Programa GEZ

15  

Dirección : Cerro Punta Betin. Soc. Portuaria, Santa Marta Teléfono : (575) 4328600 Ext. 119 E-mail : [email protected] ECUADOR Nombre : Sayra Johanna Vozmediano Naranjo Institución : Subsecretaría de Gestión Marina Costera. Ministerio de Ambiente Cargo : Encargada del Departamento de GIS Dirección : Av. Francisco de Orellana y Justino Cornejo. Piso 8.

Gobierno Zonal de Guayaquil E-mail : [email protected] Nombre : Angela Patricia Villa Ríos Institución : Instituto Oceanográfico de la Armada Cargo : Jefe de Archivo Digital Hidrográfico INOCAR-Digital Dirección : Av. 25 de Julio Base Naval Sur Teléfono : (593) 2481300 Fax : (593) 2485166 E-mail : [email protected] PANAMÁ Nombre : Marcia Ileana Pérez Montero Institución : Autoridad de Recursos Acuáticos de Panamá (ARAP) Cargo : Jefa de la Unidad de Monitoreo Pesquero-Unidad de Monitoreo

Satelital y Geomática Dirección : Vía Transísmica, Edif. El Paso Elevado, Ciudad de Panamá Teléfono : (507) 5116031 Fax : (507) 5116031 E-mail : [email protected]; [email protected] Nombre : Aquiles Abdiel Cárdenas Bacorizo Institución : Autoridad de Recursos Acuáticos de Panamá (ARAP) Dirección General de Ordenación y Manejo Integral. Cargo : Geógrafo Dirección : Vía Transísmica, Edif. El Paso Elevado, Ciudad de Panamá Teléfono : (507) 5116032 Fax : (507) 5116032 E-mail : [email protected] PERÚ Nombre : Piero Villegas Apaza Institución : Instituto del Mar del Perú (IMARPE) Cargo : Especialista-Coordinador Técnico Nacional Proyecto SPINCAM Dirección : Esquina Gamarra y General Valle, s/n, Chucuito, Callao Teléfono : (511) 6250800 ext 843 Fax : (511) 4299311

16  

E-mail : [email protected] Nombre : Sara Guadalupe Sánchez Rivas Institución : Instituto del Mar del Perú (IMARPE) Cargo : Jefe de la Unidad de Monitoreo y Gestión Costera Dirección : Esquina Gamarra y Gral. Valle S/N – Chucuito, Callao Teléfono : (511) 6250842 Fax : (511) 4299311 e-mail : [email protected]; [email protected] Nombre : Cinthya Elizabeth Bello Chirinos Institución : Instituto del Mar del Perú (IMARPE) Cargo : Bióloga Dirección : Esquina Gamarra y Gral. Valle S/N – Chucuito, Callao Teléfono : (511) 6250800 Ext. 843 Fax : (511) 4299311 E-mail : [email protected] Nombre : Rita Orozco Moreyra Institución : Instituto del Mar del Perú (IMARPE) Cargo : Bióloga-Investigador Dirección : Esq. Teléfono : (511) 6250800 Ext. 845-846 Fax : (511) 4299311 E-mail : [email protected] Nombre : Raúl Marca Quispe Institución : Dirección de Hidrografía y Navegación (HIDRONAV) Cargo : Especialista en Sistemas e Informática Dirección : Jr. Roca 2da Cuadra con Av. Gamarra, Chucuito - Callao Teléfono : (511) 6136767 Anexo: 6468 Fax : (511) 6136759 E-mail : [email protected] Nombre : Moisés Molina Vicharra Institución : Dirección de Hidrografía y Navegación (HIDRONAV) Cargo : Especialista en Sistema de Información Geográfica Dirección : Jr. Roca 2da Cuadra con Av. Gamarra, Chucuito - Callao Teléfono : (511) 6136767 - 993176410 Fax : (511) 6136759 E-mail : [email protected] Nombre : Myrian Reneé Tamayo Infantes Institución : Dirección de Hidrografía y Navegación (HIDRONAV) Cargo : Coordinadora Técnica CNDO - Perú Dirección : Jr. Roca 2da Cuadra con Av. Gamarra, Chucuito - Callao Teléfono : (511) 6136767 anexo 6434 Fax : (511) 6136759 e-mail : [email protected]; [email protected] Nombre : José Fernando Delgado Andrade

17  

Institución : Instituto Nacional de Defensa Civil (INDECI) Cargo : Especialista en Sistemas de Información Geográfica Dirección : Calle Ricardo Angulo 694-CORPAC Teléfono : (511) 2259898 Fax : (511) 2259898 e-mail : [email protected] Nombre : José Carlos Eche Llenque Institución : Instituto Nacional de Defensa Civil (INDECI) Cargo : Encargado del Área SIG Dirección : Calle Ricardo Angulo 694 – San Isidro Teléfono : (511) 2259898 Ext. 5512 e-mail : [email protected] Nombre : Alexander Montero Pérez Institución : Ministerio de Ambiente (MINAM) Cargo : Especialista del Sistema de Información Geográfica Dirección : Av. Javier Prado Oeste 1440 – San Isidro Teléfono : (511) 6116000 Ext. 1312 e-mail : [email protected] Nombre : Segundo Roberto Arbañil Segura Institución : Servicio Nacional de Áreas Naturales Protegidas del Perú

(SERNANP) Cargo : Analista Programador del Sistema de Información Geográfica Dirección : Calle N° 17 355 Urb. El Palomar – San Isidro Teléfono : (511) 2251053 Fax : (511) 4751555 e-mail : [email protected] Nombre : Liliana León Huarcaya Institución : Servicio Nacional de Áreas Naturales Protegidas del Perú

(SERNANP) Cargo : Especialista en Sistema de Información Geográfica Dirección : Calle N° 17 355 Urb. El Palomar – San Isidro Teléfono : (511) 7177486 Fax : (511) 7177486 e-mail : [email protected] Nombre : Ana Fiestas Pazos Institución : Instituto Nacional de Estadística e Informática (INEI) Cargo : Programador de Sistemas Dirección : Av. General Garzón 654-Jesús María Teléfono : (511) 2032640 Fax : (511) 2032640 e-mail : [email protected] Nombre : José Llanos Solorzano Institución : Instituto Nacional de Estadística e Informática (INEI) Cargo : Analista de Sistemas GIS Dirección : Av. General Garzón 654-Jesús María

18  

Teléfono : (511) 2032640 Fax : (511) 2032640 e-mail : [email protected] Nombre : Silvia Ângulo Vera Institución : Instituto Nacional de Estadística e Informática (INEI) Cargo : Analista Cartográfico Dirección : Av. General Garzón 654-Jesús María Teléfono : (511) 2032640 Fax : (511) 2032640 e-mail : [email protected] RED DE DATOS E INFORMACION OCEANOGRÁFICA PARA EL CARIBE Y AMERICA DEL SUR (ODINCARSA/COI-IODE) Nombre : Ariel Hernán Troisi Institución : ODINCARSA Cargo : Co-Presidente IODE Dirección : Av. Montes De Oca 2124 BS – AS, Argentina Teléfono : (5411) 4301 3091 e-mail : [email protected]  UNIVERSIDAD DE SEVILLA Nombre : Juan Pedro Pérez Alcántara Institución : Universidad de Sevilla Cargo : Director del Proyecto CIO-Universidad de Sevilla Dirección : Calle Rodio 354 100-7, Sevilla, España Teléfono : (0034) 670786422 e-mail : [email protected]; [email protected] COMISIÓN PERMANENTE DEL PACÍFICO SUR (CPPS) PLAN DE ACCIÓN PARA LA PROTECCIÓN DEL MEDIO MARINO Y ÁREAS COSTERAS DEL PACÍFICO SUDESTE Nombre : Magaly Valencia Avellán Institución : CPPS-Plan de Acción Cargo : Asistente del Plan de Acción del Pacífico Sudeste Dirección : Complejo Albán Borja-Edif. Classic, 2do piso-Guayaquil, Ecuador Teléfono : + 593 4 222 1202ext: 115 Fax : + 593 4 222 12 01 E-mail : [email protected] Nombre : Giovanni Lenin Tapia Acosta Institución : CPPS-Plan de Acción Cargo : Programador para desarrollo de Proyectos SPINCAM y SIBIMAP Dirección : Complejo Albán Borja-Edif. Classic, 2do piso-Guayaquil, Ecuador Teléfono : + 593 4 222 1202 - +593 9750 5861 Fax : + 593 4 222 12 01 E-mail : [email protected]

19  

APOYO LOGISTICO INSTITUTO DEL MAR DEL PERU Nombre : Rosa Giampietri de Calisto Institución : Instituto del Mar del Perú (IMARPE) Cargo : Asistente de la Dirección Ejecutiva Dirección : Esquina Gamarra y General Valle, s/n, Chucuito, Callao Teléfono : (511) 6250800 ext 807 Fax : (511) 4299811 E-mail : [email protected] Nombre : Mirtha Isabel Quispe Prado Institución : Instituto del Mar del Perú (IMARPE) Cargo : Secretaria de la Oficina de Asuntos Internacionales Dirección : Esquina Gamarra y General Valle, s/n, Chucuito, Callao Teléfono : (511) 6250931 Fax : (511) 6250931 E-mail : [email protected] Nombre : Diana Villalobos Institución : Instituto del Mar del Perú (IMARPE) Cargo : Secretaria de la Unidad de Monitoreo y Gestión Costera Dirección : Esquina Gamarra y General Valle, s/n, Chucuito, Callao Teléfono : (511) 6250800 Ext. 843 E-mail : [email protected] Nombre : Jaime Cornejo Patiño Institución : Instituto del Mar del Perú (IMARPE) Cargo : Unidad de Comunicaciones e Imagen Institucional Dirección : Esquina Gamarra y General Valle, s/n, Chucuito, Callao Teléfono : (511) 6250800 ext 935 E-mail : [email protected] Nombre : Julio Hurtado Jara Institución : Instituto del Mar del Perú (IMARPE) Cargo : Unidad de Mantenimiento Dirección : Esquina Gamarra y General Valle, s/n, Chucuito, Callao Teléfono : (511) 6250800 ext 896 E-mail : [email protected]

20  

ANEXO 2

AGENDA DEL CURSO

21  

 

 

CPPS/PA/2011 2/1

CURSO SOBRE SERVIDORES DE MAPAS Y VISORES CARTOGRÁFICOS PARA DESARROLLO DE ATLAS

Lima-Perú, 3-5 de mayo de 2011

AGENDA PROVISIONAL

MARTES, 3 de mayo de 2011 Expositor 09:00-09:30 Inscripción de los participantes 09:30-09:45 Instalación del curso

Palabras de bienvenida e inauguración del Curso

IMARPE

09:45-10:00 Refrigerio 10:00-10:15 Objetivos del Curso y resultados esperados IODE Presentación de delegados y breve intervención

sobre el estado de avance en la carga de metadatos, intercambio con el nodo SPINCAM-CPPS y desarrollo de indicadores regionales:

Delegados de países

10:15-10:25 Presentación de Chile Delegado de país 10:25-10:35 Presentación de Colombia Delegado de país 10:35-10:45 Presentación de Ecuador Delegado de país 10:45-10:55 Presentación de Panamá Delegado de país 10:55-11:05 Presentación de Perú Delegado de país 11:05-11:20 Refrigerio 11:20-13:00 Módulo 1. Introducción a los servicios de

mapas OGC: Introducción a servidores y a servicios OGC

Juan Pérez (Universidad de Sevilla)

13:00-14:00 Almuerzo 14:00-15:00 Módulo 2. Introducción a MapServer

Instalación en Windows. Arquitectura de base. Filosofía de trabajo con MapServer. Estructura básica de un servicio. Sintaxis básica del fichero MapFile (map).

Juan Pérez (Universidad de Sevilla)

16:00-16:30 Refrigerio 16:30-17:30 Continuación de módulo 2

Juan Pérez

(Universidad de Sevilla)

22  

MIÉRCOLES, 4 de mayo de 2011

09:00-11:00 Módulo 3. Arquitecturas centralizadas y descentralizadas. Configuración de un nodo central de MapServer. Grupos de capas. Centralización de simbología temática con SLD.

Juan Pérez (Universidad de Sevilla)

11:00-11:15 Refrigerio 11:15-13:00 Continuación módulo 3 Juan Pérez

(Universidad de Sevilla)13:00-14:00 Almuerzo 14:00-16:00 Módulo 4. Introducción a tecnologías web y a

OpenLayers. Introducción básica a conceptos web y al framework OpenLayers. Instalación de un ejemplo.

Juan Pérez (Universidad de Sevilla)

16:00-16:30 Refrigerio 16:30-17:30 Continuación módulo 4 Juan Pérez

(Universidad de Sevilla)

PARTICIPANTES

Representante de ODINCARSA/IODE, Universidad de Sevilla, Comisión Permanente del Pacífico Sudeste, Puntos Focales Nacionales, Puntos Técnicos Nacionales, Comités Nacionales de Coordinación.

JUEVES, 5 de mayo de 2011 Expositor 09:00-11:00 Módulo 5. Configuración y ejemplos de

despliegue de OpenLayers. Configuración de OpenLayers, personalización. Ejemplos de despliegue.

Juan Pérez (Universidad de Sevilla)

11:00-11:15 Refrigerio 11:15-13:00 Continuación módulo 5 13:00-14:00 Almuerzo 14:00-16:00 Módulo 6. OpenLayers dinámico

OpenLayers dinámico con tecnologías de servidor, concretamente PHP.

Juan Pérez (Universidad de Sevilla)

16:00-16:30 Refrigerio 16:30-17:00 Continuación módulo 6 Juan Pérez (Universidad

de Sevilla) 17:00-17:30 Conclusiones y Recomendaciones Plenaria

17:30-18:00 Clausura y entrega de certificados IMARPE

23  

 

 

 

ANEXO 3

MATRIZ DE ESTADO DE AVANCE

 

 

 

 

 

 

 

 

 

24  

 

CHILE

Indicador Regional

Archivo Estado de

Avance Nota

Estado (oficina virtual)

(enviado/pendiente)

INSTRUMENTOS DE

PLANIFICACION

FICHA DEL INDICADOR

Listo Indicador correspondiente a

Chile

Enviado

METADATO Pendiente Pendiente SHP FILE Pendiente 50% Pendiente

TABLA XLS. pendiente 75% Pendiente

CALIDAD DEL AGUA

FICHA DEL INDICADOR

Listo Ficha y datos enviados por Chile a Colombia para su

cálculo.

Enviado

METADATO Pendiente Pendiente SHP FILE Pendiente 50% Enviado como pts x,y

TABLA XLS. Listo Enviado

AMCP

FICHA DEL INDICADOR

Listo Recopilado y calculado por

Chile

Enviado

METADATO Listo Enviado SHP FILE Listo Enviado

TABLA XLS. Listo Enviado

DINAMICA DE POBLACIÓN

FICHA DEL INDICADOR

Pendiente 75%Faltan datos a la ficha realizada por Panamá

Pendiente

METADATO Pendiente Pendiente SHP FILE Listo Pendiente

TABLA XLS. Listo Por enviar

BIODIVERSIDAD

FICHA DEL INDICADOR

Listo Identificar los datos de

Biodiversidad

Enviado

METADATO Pendiente Pendiente SHP FILE Pendiente Pendiente

TABLA XLS. Pendiente Pendiente

 

Documento Colombia Ecuador Panamá Perú Chile

Ficha del Indicador Recibido Pendiente Recibido Recibido Recibido Metadato Pendiente Pendiente Pendiente Pendiente Pendiente Shp file Pendiente Pendiente Pendiente Pendiente Pendiente

Tabla XLS. Pendiente Pendiente Pendiente Pendiente Pendiente Encuesta de

progreso Recibido Pendiente Pendiente Pendiente Recibido

 

 

25  

 

 

COLOMBIA

Indicador Regional

Archivo Estado de

Avance Nacional(listo/pendiente)

Nota Estado (oficina

virtual) (enviado/pendiente)

INSTRUMENTOS DE

PLANIFICACION

FICHA DEL INDICADOR

Pendiente

Indicador responsabilidad Chile. El indicador se

calculó a nivel nacional, pero es posible que

cambie de acuerdo a como quede la propuesta

regional.

Enviada respuesta a Chile de encuesta para indicador en marzo de 2011

METADATO Listo Pendiente (estará disponible en un

servicio como XML)

SHP FILE Listo Pendiente (estará disponible en un

geoservicio WMS)

TABLA XLS. Listo Pendiente (estará disponible en un

geoservicio WMS)

CALIDAD DEL AGUA

FICHA DEL INDICADOR

Pendiente Indicador

correspondiente a Colombia. Tan pronto

todos los países respondieron a encuesta,

se inició revisión del indicador regional (en la

primera semana de febrero), se espera tener

la ficha del indicador completa para el mes de

Junio.

Pendiente

METADATO Listo

Enviado (perfil de Colombia se uso para metadato

regional) SHP FILE Listo Pendiente

TABLA XLS. Pendiente Pendiente

AMCP

FICHA DEL INDICADOR

Listo

Indicador responsabilidad de Ecuador. Este

indicador ya fue calculado por Colombia

Enviada retroalimentación a

Ecuador

METADATO Listo Pendiente (estará disponible en un

servicio como XML)

SHP FILE Listo Pendiente (estará disponible en un

geoservicio WMS) TABLA XLS. Listo Enviado

DINAMICA DE POBLACIÓN

FICHA DEL INDICADOR

Listo Indicador responsabilidad de Panamá. Recopilado y calculado por Colombia. Está pendiente definir los

rangos de clasificación

Enviada retroalimentación a

Panamá

METADATO Listo Pendiente (estará disponible en un

26  

para representación regional

servicio como XML)

SHP FILE Pendiente Pendiente (estará disponible en un

geoservicio WMS)

TABLA XLS. Listo Pendiente (estará disponible en un

geoservicio WMS)

BIODIVERSIDAD

FICHA DEL INDICADOR

Pendiente Indicador responsabilidad de Perú. Se han realizado dos videoconferencias y

se han intercambiado emails para la revisión de

la formulación del indicador. Por lo pronto

Perú ha propuesto que el indicador se cambie por el

de “Abundancia de especies” para lo cual

Colombia está haciendo la revisión de datos

disponibles.

Pendiente

METADATO Pendiente Pendiente SHP FILE Pendiente Pendiente

TABLA XLS. Pendiente Pendiente

 

ECUADOR

Indicador Regional

Archivo

Estado de Avance

Nacional (listo/pendiente)

Nota Estado (oficina

virtual) (enviado/pendiente)

INSTRUMENTOS DE

PLANIFICACION

FICHA DEL INDICADOR

Pendiente No enviados todavía

Pendiente

METADATO Pendiente Pendiente SHP FILE Listo Pendiente

TABLA XLS. Listo Pendiente

CALIDAD DEL AGUA

FICHA DEL INDICADOR

Pendiente Ecuador no cuenta con red de estaciones de monitoreo

de calidad de agua. En conversaciones con INP e INOCAR en ese sentido

Pendiente

METADATO Pendiente Pendiente SHP FILE Pendiente Pendiente

TABLA XLS. Pendiente Pendiente

AMCP

FICHA DEL INDICADOR

Listo Indicador correspondiente a

Ecuador

Enviado

METADATO Listo Enviado SHP FILE Listo Enviado

TABLA XLS. Pendiente Pendiente

DINAMICA DE POBLACIÓN

FICHA DEL INDICADOR

Pendiente No enviados todavía

Pendiente

METADATO Pendiente Pendiente SHP FILE Pendiente Pendiente

27  

TABLA XLS. Listo Pendiente

BIODIVERSIDAD

FICHA DEL INDICADOR

Pendiente No enviados todavía

Pendiente

METADATO Pendiente Pendiente SHP FILE Pendiente Pendiente

TABLA XLS. Listo Pendiente

 PANAMÁ

Indicador Regional

Archivo

Estado de Avance

Nacional (listo/pendiente)

Nota Estado (oficina

virtual) (enviado/pendiente)

INSTRUMENTOS DE

PLANIFICACION

FICHA DEL INDICADOR

Listo Panamá remitió su

información a Chile -listo

Enviado

METADATO Pendiente Pendiente SHP FILE Pendiente Pendiente

TABLA XLS. Pendiente Pendiente

CALIDAD DEL AGUA

FICHA DEL INDICADOR

Listo Se remitió información a

Colombia

Enviada

METADATO Pendiente Pendiente SHP FILE Pendiente Pendiente

TABLA XLS. Pendiente Pendiente

AMCP

FICHA DEL INDICADOR

Listo Panamá debe remitir al Ecuador la información que le corresponde, estamos a

la espera de que ANAM nos la remita

Pendiente

METADATO Pendiente Pendiente SHP FILE Listo Enviado

TABLA XLS. Pendiente Pendiente

DINAMICA DE POBLACIÓN

FICHA DEL INDICADOR

Listo Solo hace falta que Ecuador , Perú y Chile

revisen la ficha e incluya su información

enviada

METADATO Pendiente Pendiente SHP FILE Pendiente Pendiente

TABLA XLS. Pendiente Pendiente

BIODIVERSIDAD

FICHA DEL INDICADOR

Pendiente Panamá debe remitir información a Perú aún

estamos a la espera de que ANAM nos remita sus

comentarios sobre esta ficha

Pendiente

METADATO Pendiente pendiente SHP FILE Pendiente pendiente

TABLA XLS. Pendiente pendiente

PERÚ

Indicador Regional

Archivo

Estado de Avance

Nacional (listo/pendiente)

Nota Estado (oficina

virtual) (enviado/pendiente)

INSTRUMENTOS DE

PLANIFICACION

FICHA DEL INDICADOR

Listo

Enviado

METADATO Pendiente Pendiente SHP FILE Pendiente Pendiente

28  

TABLA XLS. Pendiente Pendiente

CALIDAD DEL AGUA

FICHA DEL INDICADOR

Listo

Enviado

METADATO Pendiente Pendiente SHP FILE Pendiente Pendiente

TABLA XLS. Pendiente Pendiente

AMCP

FICHA DEL INDICADOR

Listo

Enviado

METADATO Pendiente Por enviar SHP FILE Pendiente Por enviar

TABLA XLS. Pendiente Pendiente

DINAMICA DE POBLACIÓN

FICHA DEL INDICADOR

Listo

Enviado

METADATO Pendiente Pendiente SHP FILE Pendiente Pendiente

TABLA XLS. Pendiente Pendiente

BIODIVERSIDAD

FICHA DEL INDICADOR

Listo Indicador correspondiente a

Perú

Enviado

METADATO Pendiente En proceso SHP FILE Pendiente En proceso

TABLA XLS. Pendiente Enviado

 

29  

ANEXO 4

PASOS PARA INSTALACIÓN DE PROGRAMAS

30  

Aplicaciones de WMS

1. WMS: Acceso desde ArcGis

Para acceder a un servidor WMS necesitamos saber su raíz. Por ejemplo, el mosaico de ortofotos del año 2007 alojada en el servidor de la IDE de Andalucía se encuentra en la raíz (URL):

http://www.ideandalucia.es/wms/ortofoto2007?

Esta URL nos comunica con el puerto 80 del servidor de la IDE Andalucía, dentro del cual requerimos un servicio determinado, en este caso el servicio identificado como wms/ortofoto2007. Esta URL está publicada por los administradores del servidor de la IDE Andalucía y son ellos los que la dan a conocer como servicio WMS.

2. WMS: Acceso desde Quantum GIS

Se instaló Quantum GIS 1.6.0 Copiapó.

Se estableció la conexión al servidor WMS, mediante la opción capa que se encuentra en el menú y haciendo click en “Añadir capa WMS”, luego en “Nuevo” para introducir los datos del servidor al que se quiere conectar, mediante un nombre identificativo y la URL, que es la raíz del servicio.

Se construye la petición al dar click en Conectar. Si existe conexión, se muestran las capas que proporciona el servicio wms; seleccionamos las capas y sus estilos, en caso de que alguna de ellas tenga varios; seleccionar el tipo de imagen a pedir al servidor (usualmente, PNG24 si está disponible); por último, seleccionar el sistema de referencia, en el caso de que el servicio ofrezca varios.

3. WMS: Acceso desde ArcGIS

En GIS Servers, seleccionamos Add WMS Server e introducimos la raíz del WMS. Escogemos Get Layers y se cargarán las capas del WMS, pudiéndose seleccionar la que se requiera. En la parte derecha aparecerán los metadatos de la capa.

La capa seleccionada se agregará a los servidores GIS. Si pulsamos botón derecho sobre la capa y seleccionamos Properties, obtendremos información y metadatos sobre la misma.

Si cargamos la capa en ArcMap en un Data Frame UTM ED1950 30N, el ArcGIS hará una petición al servidor y éste mandará la imagen proyectada en dicho sistema, puesto que los metadatos nos han asegurado que está soportado (UTM ED 1950 30N es el sistema EPSG 23030). Podemos navegar por la capa de manera usual.

4. WMS: Acceso directo

En el ejemplo anterior ArcGIS ha accedido al servicio WMS de la REDIAM por nosotros y ha gestionado la petición y adquisición de la imagen.Sucediendo lo siguiente:

31  

Métodos en WMS

1. El GetCapabilities:

Como por ejemplo el caso del Servidor que ocupa REDIAM, para pedir su GetCapabilities se incluye su dirección en un navegador de Internet (es decir, en una sola línea):

http://www.ideandalucia.es/wms/ortofoto2007?

SERVICE=WMS&VERSION=1.1.1&REQUEST=GETCAPABILITIES

32  

Sin usuario, ni contraseña

Nota: Escoger Errores NO, NO, y en capas de servicio: 2 capas, con dos estilos.

33  

2. El GetMap y el GetFeatureInfo

GetMap:

En la llamada hay que especificar muchos parámetros, como por ejemplo en qué formato se quiere la imagen, la Bounding Box, el sistema de referencia, las capas que se quieren recibir, etc. y el formato de entrega es una imagen en el formato deseado.

En el caso del servidor de la IDE-A anterior, para pedir un mapa con la única capa que posee, pondremos esta dirección en un navegador de Internet (es decir, en una sóla línea):

http://www.ideandalucia.es/wms/ortofoto2007?

SERVICE=WMS&VERSION=1.1.1&REQUEST=GETMAP&SRS=EPSG:23030&BBOX=265200,3989760,308600,4014670&WIDTH=1600&HEIGHT=1000&FORMAT=JPEG&TRANSPARENT=No&LAYERS=oca10_2007

WMS: Peticiones URL

Anatomía de la petición GetMap

● Raíz del servicio WMS: http://www.ideandalucia.es/wms/ortofoto2007?

● Servicio requerido, versión y request del servidor

SERVICE=WMS&VERSION=1.1.1&REQUEST=GETMAP&

● Sistema de coordenadas requerido y Bounding Box de visualización

SRS=EPSG:23030&BBOX=265200,3989760,308600,4014670& (EPSG: grupo europeo de petrolíferos, en coordenadas propias del sistema, de 50 utm 30 Norte x minima y x maximaSRS=EPSG:23030&BBOX=265200,3989760,308600,4014670&

● Parámetros de la imagen (Tamaño, format, transparencia)

WIDTH=1600&HEIGHT=1000&FORMAT=JPEG&TRANSPARENT=No&

● Capas requeridas (la capa que se debe hacer el mapa): LAYERS=oca10_2007

34  

35  

Diseño por default Codificación de la imagen PNG2 4 Sistema de Referencia de Coordenadas WGS84 (sistema de referencia

geográfica) La rapidez de la generación del mapa depende de la conexión.

Petición del Getmap:

URL 2: IDE Andalucía: Ortofoto 2007. Petición GetMap

36  

http://www.ideandalucia.es/wms/ortofoto2007?SERVICE=WMS&VERSION=1.1.1&REQUEST=GETMAP&SRS=EPSG:23030&BBOX=265200,3989760,308600,4014670&WIDTH=1600&HEIGHT=1000&FORMAT=JPEG&TRANSPARENT=No&LAYERS=oca10_2007

WMS: El GetFeatureInfo

GetFeatureInfo:

Es el Método que poseen los servicios WMS que proporciona una información sobre un punto de una capa que sirve. Se pide llamando al servicio con su raíz y a su método GetFeatureInfo a través del protocolo HTTP. La petición requiere especificar un mapa, como en el caso del método GetMap, con la salvedad de que hay que especificar de qué capa se quiere recibir la información (QUERY_LAYERS) y la coordenada en píxeles de la imagen sobre la que se quiere consultar (X e Y);

● El formato de entrega es variable, aunque suele funcionar normalmente en las aplicaciones web como una redirección a una página web con la información.

Obtener este mapa del catastro de España:

http://ovc.catastro.meh.es/Cartografia/WMS/ServidorWMS.aspx?

SERVICE=WMS&SRS=EPSG:23029&REQUEST=GETMAP&bbox=511950,4662900,512150,4663100&width=756&height=756&format=PNG&transparent=No&LAYERS=catastro

Para obtener el GetFeatureInfo de la parcela que está en las coordenadas 200, 200 de la imagen:

URL 3: Catastro de España. Petición GetMap

37  

http://ovc.catastro.meh.es/Cartografia/WMS/ServidorWMS.aspx?SERVICE=WMS&SRS=EPSG:23029&REQUEST=GETMAP&bbox=511950,4662900,512150,4663100&width=756&height=756&format=PNG&transparent=No&LAYERS=catastro

URL 4: Catastro de España. Petición GetFeatureInfo

http://ovc.catastro.meh.es/Cartografia/WMS/ServidorWMS.aspx?SERVICE=WMS&SRS=EPSG:23029&REQUEST=GETFEATUREINFO&bbox=511950,4662900,512150,4663100&width=756&height=756&format=PNG&transparent=No&QUERY_LAYERS=catastro&X=200&Y=200

QUERY_LAYERS=catastro&X=200&Y=200

Indica la capa catastro y en las coordenadas x y

38  

Información catastral de la parcela

39  

Instalación de MapServer en Windows: stack tecnológico y tool chain

1. Se instaló en primer lugar el Notepad ++

2. Se instaló el bundle ms4w, versión 3.0.2.

3. Se configuró Apache para que escuche el puerto 8085, de forma que no ms4w no interfiera con algún otro servidor web instalado en la máquina.

4. El ms4w se puede instalar como servicio de Windows. Ejecutar el fichero c:\ms4w\apache-install.bat.

5. El servicio debe arrancar para que funcione Apache y MapServer.

6. Probar que MapServer está activo. Desde su consola, utilizar el comando mapserv.exe -v para comprobar las opciones de compilación.

7. El servidor Apache sobre el que está montado el MapServer funciona también como servidor web convencional. Y para comprobarlo se puede recurrir a la página web por defecto del servidor: http://[dirección IP]:[puerto TCP/IP] y para acceder al servidor local se utiliza la dirección http://localhost:[puerto TCP/IP]

8. Por último, se comprueba que MapServer es accesible desde el explorador de Internet, llamando directamente al propio ejecutable CGI del MapServer: http://localhost:8085/cgi-bin/mapserv.exe

Se procede a probar los servicios del mapaserver desde consola:

40  

Probar mapserver desde localhost

El stack tecnológico queda:

1. Servidor: Apache con PHP y MapServer, apoyado por múltiples librerías geomáticas Open Source como GDAL, OGR, GEOS y Proj4. Sobre este Apache se pueden utilizar frameworks PHP como CodeIgniter.

2. Cliente: aplicación web visible en un navegador y construida con HTML, CSS y JavaScript. Con todo ello funciona OpenLayers, que es un visor 100% JavaScript. También están los clientes SIG Desktop pesados como Quantum.

La tool chain será:

1. SIG Desktop: ArcGIS, Quantum, el que sea, para editar y preparar los shapes y los raster, tanto a nivel alfanumérico como geométrico.

2. Notepad++: para editar los ficheros .map y de la aplicación web.

3. Quantum GIS: para hacer las pruebas del servicio WMS.

4. Explorador web: para probar la aplicación web.

5. Para iniciar el servidor apache si tiene alguno ya instalado.

41  

ANEXO 5

EJEMPLOS Y EJERCICIOS. PASO A PASO

EJEMPLO 1: Configuración de una capa vectorial

1. Se creó MapServer con una capa vectorial y se creó el siguiente árbol de directorios sobre c:\:

- mapserver_data: raíz de nuestros datos MapServer - coberturas: alojamiento para nuestras shapes y otros - mapfiles: alojamiento para nuestros ficheros .map - símbolos: alojamiento de archivos .png - template: alojamiento de archivos .html

42  

El primer fichero .map, atlas00.map, contiene la definición de una sola capa: la de países. Este .map no está preparado aún para comportarse según el estándar WMS del OGC, sino que se comporta según el estándar propio de MapServer.

2. Para obtener la respuesta del servidor hay que hacer la petición de esta manera (al estilo MapServer):

http://localhost:8085/cgi-bin/mapserv.exe?map=c:\mapserver_data\mapfiles\atlas00.map&layer=paises&mode=map

Información original atlas00.map

43  

Comentarios sobre información de atlas00.map

# ENCODING: ISO-8859-1 áéíóú # Atlas 00: Una sóla capa vectorial, no WMS # Esto es un comentario en los .map. Todo lo que haya detrás de un # es un comentario y MapServer lo obviará al parear el .map. # El objeto MAP es el primer y principal objeto de los .map. Es el objeto más importante, y todos los demás objetos del .map viven dentro de él. MAP # Tipo de imagen prevalente a devolver por MapServer IMAGETYPE PNG24 (formato de imagen a devolver) # Extensión de los datos, en unidades del CRS principal EXTENT -180 -90 180 90 (unidad grados decimales, unidades cartográficas) # Tamaño de la imagen prevalente a devolver por MapServer SIZE 5000 3000 (tamaño de la imagen, y el máximo depende de las opciones de compilación ) # Ruta al raíz de las coberturas SHAPEPATH "c:/mapserver_data/coberturas" (Ruta de la información, cobertura shape que se usará) # Color de fondo IMAGECOLOR 255 255 255 (color de fondo, si no hay información es blanco)

44  

# Definición de un tipo de formato de devolución OUTPUTFORMAT (formato configurado de salida gráfica) # Nombre del backend de renderización NAME AGG (driver png) # Nombre del driver de renderización a utilizar DRIVER "AGG/PNG" # Mimetype devuelto MIMETYPE "image/png" (se define formato de color, un tipo de objeto que devuelve el servicio web, se indica al servicio mapserver, que cuando se solicite una imagen png el servidor apache que devuelve una imagen png) # Modo de imagen IMAGEMODE RGBA (se define otro formato 3 componente de color mas el alpha) END # Otro formato de devolución OUTPUTFORMAT NAME AGG (driver de color) DRIVER "AGG/JPEG" MIMETYPE "image/jpeg" IMAGEMODE RGBA (tipo de imagen) END # Layer: aquí se define una cobertura LAYER # Nombre de la cobertura (debe ser computer-friendly) NAME países (nombre que se identifica las peticiones getmap, nombre para la maquina

sin caracteres raros, nombre del layer) # Nombre de la shape de datos DATA paises_ue (hace referencia shape, el nombre de la cobertura) # Estado inicial STATUS OFF (debe ir # Tipo de objeto geométrico TYPE POLYGON (se puede tener polígono, label, raster) # Una clase: aquí se definen las distintas semiologías dentro de la capa CLASS (se usa para definir una forma para representar una cartografia)

# Nombre de la clase NAME "Países del mundo" (nombre para las personas)

# Estilo semiológico de la clase STYLE

45  

# Color de relleno del polígono COLOR 150 150 150 (COLOR RGB para el rellono)

# Color del borde

OUTLINECOLOR 0 0 0 (color de borde) # Este end cierra el estilo

END

# Este end cierra la clase D

# Este end cierra la cobertura END # Este end cierra el mapa

Se pueden tener muchos .map en mapserver y mostrar muchos proyectos. Se creó un mapserver con una capa vectorial, y se creó un árbol de directorio sobre c:/

Mapserver_data

Coberturas Mapfiles

2. Petición al servidor al estilo Mapserver

http://localhost:8085/cgi-bin/mapserv.exe?map=c:/mapserver_data/mapfiles/atlas00.map&layer=paises&mode=map

Imagen proyectada del server del archivo: atlas00.map

46  

http://localhost:8085/cgi-bin/mapserv.exe? (Raíz del Servicio)

map=c:/mapserver_data/mapfiles/atlas00.map&layer=paises&mode=map (Renderiza en lo especificado en la URL)

Este es un ejemplo, la URL es insegura.

El .map atlas01.map es un ejemplo de lo poco intuitiva que puede llegar a ser la sintáxis de los ficheros map. En ella vemos un ejemplo de los países, pero con el borde separado del relleno con objeto de hacerlo más grueso.

EJEMPLO CON atlas01.map

# ENCODING: ISO-8859-1 áéíóú # Atlas 01: Una sóla capa vectorial, no WMS, con dos estilos, uno para el relleno y # otro para el outline MAP IMAGETYPE PNG24

47  

EXTENT -180 -90 180 90 SIZE 2500 1000 SHAPEPATH "c:/mapserver_data/coberturas" IMAGECOLOR 255 255 255 OUTPUTFORMAT NAME AGG DRIVER "AGG/PNG" MIMETYPE "image/png" IMAGEMODE RGBA END OUTPUTFORMAT NAME AGG DRIVER "AGG/JPEG" MIMETYPE "image/jpeg" IMAGEMODE RGBA END # Este es un ejemplo de la "arbitrariedad" de la sintaxis de los .map LAYER NAME paises DATA paises_ue STATUS OFF TYPE POLYGON # El efecto deseado es: queremos una capa poligonal con relleno pero # con un borde de anchura 2 CLASS NAME "Países del mundo" # No podemos utilizar outline y width junto a color # Este STYLE se encarga del relleno STYLE COLOR 150 150 150 ANTIALIAS TRUE END # Este otro bloque STYLE se encarga del borde de los polígonos # Además, esto sólo es efectivo si se está utilizando el backend AGG STYLE OUTLINECOLOR 0 0 0 WIDTH 2 (RECONOCE COMO BORDE) ANTIALIAS TRUE END END END END

48  

STYLE OUTLINECOLOR 0 0 0 WIDTH 5 ANTIALIAS TRUE (es para mejorar la calidad del grafico, de no usarse se ve quebrado el trazado) END # Ejemplo para poner un borde

WIDTH 10 (no funciona)

# Tipo de objeto geométrico

# TYPE POLYGON

TYPE LINE (usando tipo línea)

49  

Ejercicio: incorporar a atlas01.map la capa de ZEE hipotéticas en dos versiones: una en la que las zonas económicas exclusivas se pintan de verde sin borde, y otra en la que sólo se pinta el borde.

http://localhost:8085/cgi-bin/mapserv.exe?map=c:/mapserver_data/mapfiles/ejercicio1_atlas01.map&layer=zen_sin_borde&mode=map #EJERCICIO 1 LAYER NAME zen_sin_borde DATA hipoteticas_zee STATUS OFF TYPE LINE #DEFEINICION DE CLASE CLASS NAME "ZEE" #style para cargar estilo STYLE COLOR 20 30 200 ANTIALIAS TRUE END # fin ejercicio 1 END END END END

50  

EJEMPLO 2: Configuración de dos capas vectoriales como WMS

Aún MapServer no se comporta como WMS. Para que MapServer implemente dicho estándar, hay que dotar al .map de información adicional de metadatos para generar el GetCapabilities En este sentido, el protocolo WMS es mucho más exigente que el protocolo de MapServer, y por tanto hay que proporcionar mucha más información sobre las capas.

El fichero atlas02.map define un servicio WMS de dos capas.

Ejercicio: modificar atlas02.map para que incorpore las siguientes capas como WMS, todas en EPSG:4326:

autoridades portuarias españolas: cobertura aut_portuarias

líneas de tráfico marítimo españolas: cobertura lineas_trafico_mar

# ENCODING: ISO-8859-1 áéíóú (IGUAL) # Atlas 02: Dos capas vectoriales, como WMS, con dos estilos, uno para el relleno # y otro para el outline MAP NAME Atlas IMAGETYPE PNG24 EXTENT -179 -89 179 89 SIZE 2500 1000 SHAPEPATH "c:/mapserver_data/coberturas"

51  

IMAGECOLOR 255 255 255 OUTPUTFORMAT NAME AGG DRIVER "AGG/PNG" MIMETYPE "image/png" IMAGEMODE RGBA END OUTPUTFORMAT NAME AGG DRIVER "AGG/JPEG" MIMETYPE "image/jpeg" IMAGEMODE RGBA END LO NUEVO ES WEB Y PROJECCION # Para que MapServer se comporte como WMS, necesita metadatos adicionales # que sirven para confeccionar el GetCapabilities WEB # Fichero de log LOG "c:/mapserver_data/log" (DIRECTORIO EN DONDE GUARDAR) # Metadatos general del servicio, es obligatorio METADATA # Título "wms_title" "WMS Atlas Marino" (titulo del servicio) # Resumen del servicio "wms_abstract" "Servidor de mapas del Atlas Marino" (resumen informativo) # Debe apuntar a la URL final del servicio en producción "wms_onlineresource" http://localhost:8085/cgi-bin/mapserv.exe?map=c:/mapserver_data/mapfiles/atlas02.map& (el propio servicio indica cual es la raiz de si mismo, se puede enmascarar la raíz del servicio en una raíz web que sea convenioente, aunque este en otro lugar, se debe procurar que el servicio este en el mismo lugar) # Sistemas de coordenadas soportados por el servicio "wms_srs" "EPSG:4326" (para el formato EPSG, sistema de referencia) # Extensión de las capas "wms_extent" "-179 -89 179 89" (el wms deb evolver a tener la extension) # Formato predeterminado "wms_format" "image/PNG24" (el format de salida)

52  

# Mimetype de devolución "wms_feature_info_mime_type" "text/html" (le indica que cuando alguien haga una petición, el servicio debe devolver una pagina web text/html) END (termina metadata) END (termina web) # Proyección del mapa PROJECTION "init=epsg:4326" (proyección preferida del servicio, cualquier configuración para librería proj4) END LAYER NAME paises DATA paises_ue STATUS OFF TYPE POLYGON # Las coberturas también necesitan sus propios metadatos METADATA # Título de la capa "wms_title" "Países" # Descripción de la capa "wms_abstract" "Países" # Sistema de referencia de los datos de la capa "wms_srs" "EPSG:4326" (sistema de coordenadas de esta capa, este es diferente al del servicio,) # Extensión en unidades del CRS de la capa "wms_extent" "-179 -89 179 89" END (fin metadata) # Proyección de la capa (necesita su bloque projection, projecion nativa) PROJECTION "init=epsg:4326" END # CLASSGROUP define un grupo de estilos que se usan en conjunto CLASSGROUP "Por defecto" CLASS NAME "Países del mundo" # CLASSGROUP al que pertenece esta CLASS (define un grupo de clases que definen cada uno de los estilos) GROUP "Por defecto" (permite al usuario seleccionar por defecto)

53  

(Se hará en dos colores, dos estilos) STYLE COLOR 150 150 150 ANTIALIAS TRUE END STYLE OUTLINECOLOR 0 0 0 (color negro) WIDTH 2 (ancho 2) ANTIALIAS TRUE END END

# Otro CLASSGROUP (solo se ofrece el borde) CLASSGROUP "Hueco" CLASS NAME "Países del mundo" GROUP "Hueco" STYLE OUTLINECOLOR 0 0 0 WIDTH 1 ANTIALIAS TRUE END END END (NUEVA CAPA) LAYER NAME latlongi DATA latlongi STATUS OFF TYPE LINE METADATA "wms_title" "Latitud / Longitud" "wms_abstract" "Rejilla Latitud / Longitud" "wms_srs" "EPSG:4326" "wms_extent" "-179 -89 179 89" END PROJECTION "init=epsg:4326" END CLASSGROUP "Por defecto" CLASS NAME "Países del mundo" GROUP "Por defecto"

54  

STYLE COLOR 0 0 0 (NEGRO ) WIDTH 1 (ancho) ANTIALIAS TRUE END END END END

Sistemas de coordenas soportados por el servicio (línea 34) # Sistemas de coordenadas soportados por el servicio (COMO QUIERO MOSTRAR)

"wms_srs" "EPSG:4326,EPSG:4320"

En sistema de referencia de los datos de la capa (SISTEMA DE REFERENCIA ORIGINAL) "wms_srs" "EPSG:4326"

http://localhost:8085/cgi-bin/mapserv.exe?map=c:/mapserver_data/mapfiles/atlas02.map&servic=wms&version=1.1.1&request=getcapabilities http://localhost:8085/cgi-bin/mapserv.exe?map=c:/mapserver_data/mapfiles/ejercicio2_atlas02.map&servic=wms&version=1.1.1&request=getcapabilities CONFIGURACION MAPAS DEL SERVICIO URL 6: Petición con protocolo WMS sobre un MapServer ---------------------------------------------------- http://localhost:8085/cgi-bin/mapserv.exe?map=c:/mapserver_data/mapfiles/atlas01.map&

55  

56  

57  

58  

EJEMPLO 3: Configuración del GetFeatureInfo

La configuración de la petición GetFeatureInfo se realiza a nivel de LAYER, ya que cada capa puede responder de forma diferente a la petición. MapServer puede servir la petición GetFeatureInfo en forma de HTML, XML, JSON, etc.. HTML es muy visual, destinado a las aplicaciones web. XML y JSON son formatos de intercambio de datos con los que un programa recibiría los datos asociados a la geometría seleccionada y podría hacer algo con ellos.

Para componer la respuesta GetFeatureInfo, MapServer se sirve de un sistema de plantillas (TEMPLATES). En las plantillas podemos componer ficheros HTML, XML o JSON en los que intercalamos macros que acceden a información de la geometría seleccionada, como por ejemplo campos de su tabla de atributos alfanuméricos.Ver páginas del manual de MapServer a partir de la 130.

Ejercicio: añadir una capa para las autoridades portuarias (aut_portuarias) y crear una plantilla en la que se muestre el nombre de la autoridad portuaria, su país, sus coordenadas geográficas y el nivel de capturas pesqueras.

# ENCODING: ISO-8859-1 áéíóú # Atlas 03: Dos capas vectoriales, como WMS, con GetFeatureInfo MAP NAME Atlas IMAGETYPE PNG24 EXTENT -179 -89 179 89 SIZE 2500 1000 SHAPEPATH "c:/mapserver_data/coberturas" IMAGECOLOR 255 255 255 OUTPUTFORMAT NAME AGG DRIVER "AGG/PNG" MIMETYPE "image/png" IMAGEMODE RGBA END OUTPUTFORMAT NAME AGG DRIVER "AGG/JPEG" MIMETYPE "image/jpeg" IMAGEMODE RGBA END WEB LOG "c:/mapserver_data/log" METADATA "wms_title" "WMS Atlas Marino"

59  

"wms_abstract" "Servidor de mapas del Atlas Marino" "wms_onlineresource" http://localhost:8085/cgi-bin/mapserv.exe?map=c:/mapserver_data/mapfiles/atlas02.map& (direccion pubñlica final del ejercicio) "wms_srs" "EPSG:4326" "wms_extent" "-179 -89 179 89" "wms_format" "image/PNG24" "wms_feature_info_mime_type" "text/html" END END PROJECTION "init=epsg:4326" END AQUI VIENEN LOS CMABIOS (TEMPLATE) LAYER NAME paises DATA paises_ue STATUS ON TYPE POLYGON # TEMPLATE indica, con respecto al fichero .map, la ubicación del template # MapServer que debe utilizarse para componer el GetFeatureInfo de esta cobertura (FICHERO PLANTILLA, QUE DEBE USAR, CUANDO EN QUANTUM SE SOLICITA LA CONSULTA, VA A USAR EL TEMPLATE PAISES, es decir, template indica con respecto al fichero .map, la ubicación del template. TEMPLATE "../templates/paises.html" (le da igual la extensión a mapserver, pero el mimetype da la naturaleza de la respuesta del servidor web) METADATA "wms_title" "Países" "wms_abstract" "Países" "wms_srs" "EPSG:4326" "wms_extent" "-179 -89 179 89" # Indica que lo que va a devolver el GetFeatureInfo de esta cobertura # es un HTML (indica lo que devuelve texto) "wms_feature_info_mime_type" "text/html" END PROJECTION "init=epsg:4326" END CLASSGROUP "Por defecto" CLASS

60  

NAME "Países del mundo" GROUP "Por defecto" STYLE COLOR 150 150 150 ANTIALIAS TRUE END STYLE OUTLINECOLOR 0 0 0 WIDTH 2 ANTIALIAS TRUE END END CLASSGROUP "Hueco" CLASS NAME "Países del mundo" GROUP "Hueco" STYLE OUTLINECOLOR 0 0 0 WIDTH 1 ANTIALIAS TRUE END END END LAYER NAME latlongi DATA latlongi STATUS OFF TYPE LINE METADATA "wms_title" "Latitud / Longitud" "wms_abstract" "Rejilla Latitud / Longitud" "wms_srs" "EPSG:4326" "wms_extent" "-179 -89 179 89" END PROJECTION "init=epsg:4326" END CLASSGROUP "Por defecto" CLASS NAME "Países del mundo" GROUP "Por defecto" STYLE

61  

COLOR 0 0 0 WIDTH 1 ANTIALIAS TRUE END END END LAYER NAME lineas_trafico_mar DATA lineas_trafico_mar STATUS OFF TYPE LINE TEMPLATE "../templates/lineas_trafico_mar.html" METADATA "wms_title" "Líneas de tráfico marítimo españolas" "wms_abstract" "Líneas de tráfico marítimo españolas" "wms_srs" "EPSG:4326" "wms_extent" "-179 -89 179 89" "wms_feature_info_mime_type" "text/html" END PROJECTION "init=epsg:4326" END CLASSGROUP "Por defecto" CLASS NAME "Líneas marítimas" GROUP "Por defecto" STYLE COLOR 0 150 0 WIDTH 2 ANTIALIAS TRUE END END END END

Para probar se abre el QUANTUM Del archivo mapserver (atlas03.map) http://localhost:8085/cgi-bin/mapserv.exe?map=c:/mapserver_data/mapfiles/atlas02.map& SE EDITA ATLAS MARINO Y SE CAMBIA URL http://localhost:8085/cgi-bin/mapserv.exe?map=c:/mapserver_data/mapfiles/atlas03.map&

62  

<!-- MapServer Template --> <!-- Las templates MapServer tienen que comenzar con el "magic string" anterior para que MS las reconozca como tales --> <!-- Una template es un documento que devuelve un HTML, XML, JSON o similar --> <html> <head> <title>Atlas Marino</title>

63  

</head> <body> <!-- Se puede acceder a los datos de la cobertura con la sintaxis [nombre_de_campo] --> <p><strong>x:</strong> [mapx] / <strong>y:</strong> [mapy]</p> <p><strong>País:</strong> [PaisesES]</p> <p><strong>Web:</strong> <a href='[url]' target='blank'>[url]</a></p> </body> </html> [mapx] es una macro, le dice a mapserver escribe la coordenada en donde se ha pinchado. [mapy] es una macro, escribe la coordenada [PaisesES] nombre de un campo alphanumerico de shapefile, en donde se alberga el nombre en español de los países, se va a la tabla, y se sustituye la macro por el valor del campo de la tabla. '[url]' sustituye el valor por el de la macro, y se sustituye por el link de la web indicada en la table y se ponen entre comillas. El archivo html se puede usar css, javascript para dar forma más personalizada.

Para la Cobertura vectorial hay que revisar la forma y Auto_porturarias (en codificación UTF-8)

64  

Ver atributos

IMPORTANTE: No usar caracteres extraños y a partir de los campos que están en la tabla, crear una plantilla

‐ incluir capa .map ‐ incluir template

65  

EJEMPLO 4: Múltiples proyecciones en un .map Es posible, gracias a la librería geodésica Proj4, ofrecer la posibilidad de crear los mapas con distintas proyecciones, aunque Proj4 es una librería difícil de comprender y muy temperamental. Para ello, cada LAYER tiene que tener perfectamente identificado su sistema de referencia, su EXTENT y sus unidades del sistema de coordenadas, de forma que Proj4 sepa de qué a qué sistema de referencia tiene que convertir los datos. Los distintos sistemas de referencia que se quiere que el WMS sirva se han de poner en la claúsula “wms_srs” del bloque de metadatos WEB, en formato EPSG. El map en su conjunto también ha de poseer un EXTENT, un sistema de referencia y unas unidades. Lamentablemente, Quantum tiene un bug a la hora de solicitar capas en un sistema de referencia que no es el suyo si no le acompaña en la petición alguna capa que sí tenga ese sistema de referencia, por lo que probaremos las URL 7 y 8 en un navegador para ver que realmente el servidor sí responde. Ejercicio: hacer que el .map sea capaz de proporcionar los mapas también en la proyección Lambert Azimutal Equiárea sobre el datum ETRS89 (pista: EPSG:3035) y comprobar sus resultados. 1. Combinar en el mismo .map distintos sistemas de referencias 2. Cargar shapefile en QUANTUM

#ENCODING: ISO-8859-1 áéíóú # Atlas 04: Varias proyecciones MAP NAME Atlas IMAGETYPE PNG24 # Como ahora hay varias proyecciones, esta es la del EPSG principal del mapa EXTENT -179 -89 179 89 (a nivel de map, hace referencias a las coordenadas, esta en función de las unidades de referencia a nivel del servicio complete) SIZE 5000 5000 SHAPEPATH "c:/mapserver_data/coberturas" IMAGECOLOR 255 255 255 # Unidades finales del mapa, según el EPSG principal UNITS dd (se debe indicar la unidad dd decimal degree) OUTPUTFORMAT NAME AGG DRIVER "AGG/PNG" MIMETYPE "image/png" IMAGEMODE RGBA

66  

END OUTPUTFORMAT NAME AGG DRIVER "AGG/JPEG" MIMETYPE "image/jpeg" IMAGEMODE RGBA END WEB LOG "c:/mapserver_data/log" METADATA "wms_title" "WMS Atlas Marino" "wms_abstract" "Servidor de mapas del Atlas Marino" "wms_onlineresource" "http://localhost:8085/cgi-bin/mapserv.exe?map=c:/mapserver_data/mapfiles/atlas02.map&" # Aquí, en el cuerpo de metadatos WEB, metemos los sistemas de referencia en # EPSG que queremos utilizar "wms_srs" "EPSG:4326 EPSG:23030 EPSG:3035" (3 sistemas de proyeccion, aquí se indican LOS SERVICIOS OFRECIDOS AL USUARIO, ES DISTINTO A LO INDICADO POR CAPA, AQUÍ ES GENERAL) # EXTENT general del mapa, en función de su EPSG principal "wms_extent" "-179 -89 179 89" (extend del mapa completo el inical cabezera) "wms_format" "image/PNG24" "wms_feature_info_mime_type" "text/html" END END # Esta sigue siendo la proyección por defecto del .map PROJECTION (el de cabezera) "init=epsg:4326" END PRIMERA CAPA LAYER NAME paises DATA paises_ue STATUS ON TYPE POLYGON

67  

TEMPLATE "../templates/paises.html" # Unidades del EPSG de esta capa UNITS dd (se debe indicar las unidades en las que estan expresadas sus sistema de referencia, polrque en la proyeccion esta indicado) METADATA "wms_title" "Países" "wms_abstract" "Países" "wms_srs" "EPSG:4326" (los datos de un shape, solo están expresadas en solo UN UNICO sistema de coordenadas de referencia) # EXTENT de esta capa en concreto "wms_extent" "-179 -89 179 89" (En function de las coordenadas del sistema de referencia) "wms_feature_info_mime_type" "text/html" END # Muy importante: el CRS de esta cobertura. Si MapServer no tiene información # de qué CRS de origen tiene una cobertura, Proj4 no puede reproyectar PROJECTION (Proyeccion de la capa) "init=epsg:4326" END CLASSGROUP "Por defecto" CLASS NAME "Países del mundo" GROUP "Por defecto" STYLE COLOR 150 150 150 ANTIALIAS TRUE END STYLE OUTLINECOLOR 0 0 0 WIDTH 2 ANTIALIAS TRUE END END CLASSGROUP "Hueco" CLASS NAME "Países del mundo" GROUP "Hueco" STYLE OUTLINECOLOR 0 0 0 WIDTH 1 ANTIALIAS TRUE

68  

END END END CAPA 2 CON OTRO SISTEMA LAYER NAME latlongi DATA latlongi STATUS OFF TYPE LINE UNITS dd METADATA "wms_title" "Latitud / Longitud" "wms_abstract" "Rejilla Latitud / Longitud" "wms_srs" "EPSG:4326" "wms_extent" "-179 -89 179 89" END # Esta cobertura también viene en WGS84 geográficas PROJECTION "init=epsg:4326" (relacion con wms_srs del sistema de la capa) END CLASSGROUP "Por defecto" CLASS NAME "Latitud / Longitud" GROUP "Por defecto" STYLE COLOR 0 0 0 WIDTH 1 ANTIALIAS TRUE END END END LAYER NAME enp DATA enp STATUS OFF TYPE POLYGON # Proyección UTM -> unidades metros UNITS meters (se indican que las coordenadas ahora son metros) METADATA "wms_title" "Espacios Naturales Protegidos Cádiz" "wms_abstract" "Espacios Naturales Protegidos de la provincia de Cádiz, Andalucía (España)"

69  

# Esta, sin embargo, viene en ED50 UTM 30N "wms_srs" "EPSG:23030" (sistema de referencia) # El EXTENT de esta capa en sus coordenadas nativas "wms_extent" "185000 3990000 303400 4099000" (coordenadas planas, en metros, en relación a lo indicado para esta capa) END # Sin embargo, esta cobertura de la Consejería de Medio Ambiente del # gobierno regional de Andalucía viene en nuestro venerable ED1950 UTM 30N PROJECTION "init=epsg:23030" (concordando con el metadata) END CLASSGROUP "Por defecto" CLASS NAME "ENP" GROUP "Por defecto" STYLE OUTLINECOLOR 0 0 0 WIDTH 1.5 ANTIALIAS TRUE END STYLE COLOR 255 170 0 ANTIALIAS TRUE END END END END Probar en QUANTUM

70  

EJEMPLO 5: Clasificaciones temáticas En el .map atlas05.map se han creado diversas clasificaciones temáticas de distintas formas. MapServer soporta expresiones lógicas:

igualdades: ([campo] == valor); desigualdades: ([campo] < valor), ([campo] <= valor), ([campo] > valor), ([campo]

>= valor), ([campo] != valor); listas: ([campo] in "valor1, valor2, valor3, ... , valorn"); comparaciones de cadena: '[ue]' EQ 'si'.

Los nombres de los campos van entre corchetes, las cadenas de caracteres deben ir entre comillas. Una lista completa de las expresiones lógicas la encontramos en 5.4 Expressions, pág. 89. Ejercicio: clasificar los meridianos y paralelos de la capa latlongi en función de su singularidad y darle más peso a los meridianos y paralelos singulares (ecuador, Greenwich y trópicos).

Se prueba en Quantum

71  

CREAR NUEVA CONECCION Atlas_marino_template_aut_porturias

72  

Pulsar la flecha info para cargar el template e identificar los objetos espaciales

73  

EJERCICIO 6: Simbología avanzada

Para el Atlas Regional es importante diseñar una biblioteca de símbolos para que haga sus includes y así se use la misma simbología.

Considerando los principios básicos de la cartografía el uso de más de 6 colores son indistinguibles

El ojo humano es más sensible a la textura que al color, es por eso que hay que utilizar diferentes tramas y simbologías.

MapServer es bastante flexible a la hora de crear simbología compuesta. La construcción SYMBOL permite crear elementos semiológicos sencillos que después se pueden combinar para crear semiología compleja en las capas.

El .map atlas06.map muestra diversas posibilidades para crear semiología avanzada.

Para una información exhaustiva sobre este tema, consultar el artículo 5.1 Cartographic Symbol Construction with MapServer (pág. 63).

Simbología Avanzada

STYLE

Una directiva INCLUDE permite crear .map que son agregaciones de otro .map

INCLUDE “symbols.map”

Este symbols.map contiene

Si symbols.map está en otro directorio es así “../symbols/symbols.map”

TIENE una estructura:

SYMBOL – este se puede reutilizar luego Ejemplo: SYMBOL NAME "circulo" TYPE ELLIPSE POINTS 50 50 #quiere decir que es un circulo END FILLED true # relleno ANTIALIAS true END # Un símbolo icónico que es un png SYMBOL NAME "icono" TYPE PIXMAP #proporcionar una imagen IMAGE "../simbolos/centros_sanitarios_map.png"

74  

TRANSPARENT 0 END # Un símbolo de tipo vector tine dos trazos SYMBOL NAME "cruz" TYPE vector POINTS 2 0 2 4 -99 -99 #separa un nueva línea 0 2 4 2 END END # Un símbolo de relleno vectorial / un polígono rellenado con una trama vectorial SYMBOL NAME "rellenodiagonal" TYPE vector TRANSPARENT 0 POINTS 0 1 1 0 END END # Un símbolo cartoline SYMBOL NAME "cartoline" TYPE cartoline LINECAP round LINEJOIN round PATTERN 10 15 END #para una línea punteada END # Un símbolo cartoline si quiero una linea un punto espacio SYMBOL NAME "cartoline" TYPE cartoline LINECAP round LINEJOIN round PATTERN 10 15 3 15 END #para una línea punteada END Atlas06.map

# A continuación, un tramado sencillo gris / el dibujo es en orden

STYLE

SYMBOL "tramado"

75  

COLOR 150 150 150

ANGLE 45 #angulo

SIZE 5 #separacion entre linea y linea

ANTIALIAS TRUE

END

Realizar un triángulo encerrado en un círculo para autoridades portuarias

En symbol.map # Un símbolo de tipo vector triangulo SYMBOL NAME "triangulo" TYPE vector POINTS 0 0 1.5 3 3 0 0 0 END END En atlas06.map en LAYER autoridad portuaria # Dentro, la cruz girada 45 grados STYLE SYMBOL "triangulo" SIZE 12 COLOR 255 255 255 ANGLE 45 WIDTH 2

76  

END

EJEMPLO 7: Etiquetas y toponimia

El .map atlas07.map muestra diversos tipos de posibilidades de manejo de la toponimia gracias al bloque LABEL y sus satélites.

Ejercicio: crear dos clases en la capa ENP en función de si el área de la misma (campo Shape_Area) supere o no los 350000000 metros cuadrados. Darle a cada clase una etiqueta sobre el campo Nombre que se muestre a partir de una escala 1:500000, de forma que la de la clase con más área sea más grande que la de la clase con menos área.

# Aquí se define el estilo de las etiquetas – los bloques label se inserta en las clases LABEL # color de la fuente COLOR 0 0 0 # color de la sombra SHADOWCOLOR 150 150 150 # tamaño de la sombra SHADOWSIZE 2 2 # Tipo de fuente. Truetype siempre da los mejores resultados.

77  

TYPE TRUETYPE # Fuente a utilizar. Debe estar convenientemente configurada en el fichero FONTSET tiene que Coincidir con la del inicio FONT arial # tamaño de la fuente SIZE 12 # Posición de la etiqueta. Vertical: c=center, u=upper, l=lower; # horizontal: c=center, l=left, r=right. También puede ser auto POSITION CC # Determina si MapServer tiene permiso para generar etiquetas incompletas o no (TRUE / FALSE). PARTIALS FALSE # Distancia mínima entre etiquetas, en pixels / ninguna etiqueta este a 50 pixel de otra etiqueta MINDISTANCE 50 # Ninguna etiqueta se renderizará a menos de esta distancia una de la otra -distancia minima BUFFER 4 # halo /un borde a la letra OUTLINECOLOR 255 255 255 END END

78  

EJEMPLO 8: Capas raster

El .map atlas08.map muestra una capa raster configurada.

Para incorporar un raster # Una LAYER raster LAYER NAME fondo DATA "c:\mapserver_data\coberturas\batimetria2.tif" STATUS OFF TYPE RASTER METADATA "wms_title" "Relieve mundo" "wms_abstract" "Imagen representativa del relieve mundial. Fuente GEBCO" "wms_srs" "EPSG:4326" "wms_format" "image/png24" END PROJECTION "init=epsg:4326" END END

79  

EJEMPLO 9: Capas WMS en cascada

En el .map atlas09.map se presenta un WMS en cascada sobre el (por otra parte exasperante) servicio WMS de ortoimágenes de la Junta de Andalucía.

Ejercicio: escoger tu WMS favorito e intégralo en un .map como un WMS en cascada.

http://geoportal.invemar.org.co/cgi-bin/service?

80  

Wms en cascada a Int_Clima

Para configurar que no salga todo el url del wms

81  

OPEN LAYER

<html xmlns="http://www.w3.org/1999/xhtml"> <head> <!-- Hojas de estilo. Sirven para configurar el aspecto de todo lo que aparece en la página --> <link rel="stylesheet" href="openlayers/theme/default/style.css" type="text/css" /> <link rel="stylesheet" href="openlayers/style.css" type="text/css" /> <link rel="stylesheet" href="css/960_12_col.css" type="text/css" /> <!-- Aquí insertamos en la página el OpenLayers, que es un programa hecho en JavaScript (por eso la extensión .js) --> <script src="openlayers/OpenLayers.js"></script> <!-- Este es otro fragmento de código JavaScript integrado directamente en la página web. Sirve para configurar, preparar y poner en marcha el OpenLayers --> <script type="text/javascript"> // Definimos dos objetos: map, que contendrá la aplicación OpenLayers, // y un objeto layer para contener la capa que vamos a meter en el OpenLayers var map, layer; // Esta función inicializa el OpenLayers function init()

82  

{ // Esta instrucción crea el objeto aplicación OpenLayers inicial. Se le asigna un nombre (map), // un bounding box (OpenLayers.Bounds), las unidades de las coordenadas del mapa (units, en este // caso metros) y la proyección que va a utilizar, en EPSG (projection, en este caso EPSG:23030) map = new OpenLayers.Map('map', { maxExtent: new OpenLayers.Bounds(-189,-89,189,89), restrictedExtent: new OpenLayers.Bounds(-179, -89, 179, 89), maxResolution:"auto", units:"dd", tileSize: new OpenLayers.Size(256, 256), projection: "EPSG:4326", controls: [new OpenLayers.Control.Navigation()], numZoomLevels:12}); // Con esta línea creamos y configuramos la capa que queremos introducir en nuestro OpenLayers. // Se necesita un objeto OpenLayers.Layer para cada capa, y estas pueden ser de muchos tipos. // El tipo que nos interesa a nosotros es el WMS, por lo que crearemos un objeto de tipo OpenLayers.Layer.WMS // Cada capa tiene un nombre, que será el que se vea en el propio OpenLayers, la raíz del servicio WMS que queremos // mostrar, la lista de capas del WMS de las que queremos que esté compuesta la capa (separadas por comas) y por último // un parámetro muy útil llamado gutter que hará que las teselas WMS se solapen de forma más elegante layer = new OpenLayers.Layer.WMS("Países", "http://localhost:8085/cgi-bin/demo_wms.exe?", {layers: 'paises', transparent: true, format: "png24"}, {isBaseLayer: true, transparent: true, singleTile: false, visibility:true}); layer_a = new OpenLayers.Layer.WMS("Hipsometría", "http://localhost:8085/cgi-bin/demo_wms.exe?", {layers: 'fondo', transparent: true, format: "png24"}, {isBaseLayer: true, transparent: true, singleTile: false, visibility:true}); layer2 = new OpenLayers.Layer.WMS("Toponimia", "http://localhost:8085/cgi-bin/demo_wms.exe?", {layers: 'paises_annotation', transparent: true, format: "png24"}, {isBaseLayer: false, transparent: true, singleTile: true, visibility:true}); layer3 = new OpenLayers.Layer.WMS("ZEE", "http://localhost:8085/cgi-bin/demo_wms.exe?", {layers: 'hipoteticas_zee', transparent: true, format: "png24"}, {isBaseLayer: false, transparent: true, singleTile: false, visibility:false});

83  

layer4 = new OpenLayers.Layer.WMS("Espacios Naturales Protegidos", "http://localhost:8085/cgi-bin/demo_wms.exe?", {layers: 'enp', transparent: true, format: "png24"}, {isBaseLayer: false, transparent: true, singleTile: false, visibility:false}); layer5 = new OpenLayers.Layer.WMS("Autoridades portuarias", "http://localhost:8085/cgi-bin/demo_wms.exe?", {layers: 'aut_portuarias', transparent: true, format: "png24"}, {isBaseLayer: false, transparent: true, singleTile: false, visibility:false}); // Añadimos las capas a la aplicación OpenLayers map.addLayers([layer, layer_a, layer3, layer4, layer5, layer2]); // Definimos un control info info = new OpenLayers.Control.WMSGetFeatureInfo({ url: "http://localhost:8085/cgi-bin/demo_wms.exe?", title: "Información de capa activa", queryVisible: true, layers: [layer], eventListeners: { getfeatureinfo: function(event) { map.addPopup(new OpenLayers.Popup.FramedCloud( "chicken", map.getLonLatFromPixel(event.xy), null, event.text, null, true)); } } }); map.addControl(info); map.addControl(new OpenLayers.Control.OverviewMap()); info.activate(); map.addControl(new OpenLayers.Control.LayerSwitcher()); map.addControl(new OpenLayers.Control.ScaleLine()); map.addControl(new OpenLayers.Control.MousePosition()); map.addControl(new OpenLayers.Control.PanZoomBar()); //map.addControl(new OpenLayers.Control.OverviewMap()); // Le decimos a OpenLayers que muestre el mapa a extensión máxima de partida // (el bounding box que hemos definido en OpenLayers.Bounds cuando creamos el objeto map) map.zoomToMaxExtent(); } </script>

84  

</head> <!-- El body de la página. Lo primero que hace (evento onload) es ejecutar la función init() que hemos definido previamente, que prepara y lanza el OpenLayers --> <body onload="init()"> <div class="container_12"> <div class="grid_12"> <h1>Ejemplo de OpenLayers con WMS 1</h1> </div> <!-- Aquí es donde la página va a poner el OpenLayers. Siempre se usa una etiqueta div que tiene que tener un atributo id que se llame igual que el objeto OpenLayers que definimos en init() --> <div class="grid_12"><div id="map" class="smallmap"></div></div> </div> </div> </body> </html>