30 dic 2024

Nueva actualización del Código Geoespacial



El pasado abril, compartimos en este blog la noticia sobre la
ampliación del Código Geoespacial con la nueva regulación del «Espacio Ultraterrestre». Hoy nos complace anunciar una reciente actualización que incluye la incorporación de nuevas normas de este sector.

El Código Geoespacial es un compendio de las principales normas legales y reglamentarias, nacionales, europeas e internacionales aplicables en España, de interés para los sectores de la Cartografía e Información Geográfica, la Topografía, la Abogacía, el Notariado, el Catastro Inmobiliario, el Registro de la Propiedad y, como últimas ampliaciones, el Espacio Ultraterrestre y el Doble Uso Civil y Militar.

En el ámbito del Espacio Ultraterrestre, el Código Geoespacial ofrece una sistemática legal práctica que va desde la actividad espacial, como el Registro de Objetos Espaciales, las alertas espaciales o las servidumbres de infraestructuras espaciales, hasta los aspectos institucionales y de defensa nacional, con el nuevo Ejército del Aire y del Espacio.


Estas son las nuevas normas incorporadas en la reciente actualización.

VII. ESPACIO ULTRATERRESTRE

A. ACTIVIDAD ESPACIAL

  1. Exploración y utilización del espacio ultraterrestre, incluso la Luna y otros cuerpos celestes
  2. Acuerdo de salvamento, devolución de astronautas y restitución de objetos lanzados al espacio
  3. Convenio sobre la responsabilidad internacional por daños causados por objetos espaciales
  4. Convenio sobre el registro de objetos lanzados al espacio ultraterrestre
  5. Creación Registro previsto en Convenio sobre objetos lanzados al espacio ultraterrestre
  6. Protocolo de Alertas Espaciales
  7. Instrumentos de ratificación del Tratado de prohibición de pruebas con armas nucleares

B. DEFENSA NACIONAL

  1. Cambio de denominación del Ejército del Aire por la de Ejército del Aire y del Espacio
  2. Desarrollo de la organización básica del Ejército del Aire y del Espacio

C. AGENCIA ESPACIAL ESPAÑOLA

  1. Estatuto de la Agencia Estatal «Agencia Espacial Española»

D. DOBLE USO CIVIL Y MILITAR

  1. Ley sobre el control del comercio exterior de material de defensa y de doble uso
  2. Reglamento de control del comercio exterior de material de defensa y de doble uso
  3. Ley Orgánica de Represión del Contrabando
  4. Ley sobre secretos oficiales
  5. Régimen jurídico de movimientos de capitales y de transacciones económicas con el exterior 
  6. Real Decreto sobre inversiones exteriores
  7. Procedimientos aplicables para las declaraciones de inversiones exteriores

Publicado por la editora.

27 dic 2024

Nuevo servicio Quantized Mesh del Modelo Digital de Elevaciones de España

Penyagolosa (Castellón)

La
Infraestructura de Datos Espaciales de España (IDEE) ofrece en su web los diferentes servicios teselados XYZ disponibles en España. Dentro de estos servicios, se acaba de publicar el de Modelo Digital de Elevaciones de España con información de elevaciones en formato Quantized Mesh, v 1.0. Este formato sigue la misma especificación TMS para dividir el espacio que otros servicios teselados 2D. La diferencia está en que la información servida en cada tesela contiene los datos de altura en forma de mallas 3D. Todas las teselas tienen la extensión .terrain.
 

Modelo Digital de Elevaciones de España – Quantized Mesh

Servicio de teselas

https://qm-mdt.idee.es/1.0.0/terrain/{z}/{x}/{y}.terrain

Capacidades del servicio

https://qm-mdt.idee.es/1.0.0/terrain/layer.json


Este servicio se ha obtenido a partir de los valores de alturas del Modelo Digital del Terreno (MDT05), primera cobertura, proporcionado por el Plan Nacional de Ortofotografía Aérea. Se ha utilizado la aplicación Cesium Terrain Builder, para Docker para obtener los datos. Está teselado hasta nivel 16. En los niveles más pequeños, del 0 al 5, se ha utilizado como fuente de datos el MDT500, y en los niveles de 6 al 9 el MDT25, correspondientes a la primera cobertura. Este servicio se ha realizado según el esquema TMS para la proyección WGS-84, EPSG:4326, por lo que tiene dos teselas en el nivel 0.

Sierra Nevada (Granada)

Con este nuevo servicio se pretende ofrecer una nueva forma de explotar los MDT adecuada a las demandas de los diferentes clientes en aplicaciones que utilizan la librería Cesium para visualización en 3D.

Publicado por Cecilia Poyatos Hernández

26 dic 2024

Nuevo Postgrado de experto en Programación de aplicaciones web map


La información geográfica es un elemento estratégico en nuestra sociedad y un potente recurso de comunicación. El Diploma de Experto en Programación de Aplicaciones Web Map permite adentrarse en el desarrollo de aplicaciones de mapas web así como en el diseño y gestión de arquitecturas cliente-servidor y bases de datos espaciales.

El Servicio de Sistemas de Información Geográfica y Teledetección (SIGTE) de la Universitat de Girona ofrece un nuevo postgrado que consta de los módulos o asignaturas:
  • Bases de datos espaciales (6ECTS)
  • Programación de Aplicaciones Web Map – Frontend (6ECTS)
  • Programación de Aplicaciones Web Map - Backend y Frontend (6ECTS)
El postgrado es 100% online y se lleva a cabo a través de la plataforma de aprendizaje de la Univeristat de Girona. El curso empezará el 10 de febrero de 2025 y finalizará el 21 de junio de 2025.

¿Qué aprenderás?
  • A diseñar una base de datos con tablas, atributos, relaciones, claves primarias, etc.
  • A utilizar las órdenes de consulta de bases de datos (SQL) y realizar consultas utilizando las funciones espaciales de PostGIS.
  • A desarrollar una aplicación que permita mostrar un mapa en la web.
  • A desarrollar aplicaciones de mapas web con API de Leaflet y Openlayers.
  • A diseñar aplicaciones con arquitectura cliente-servidor.
  •  A crear conexiones con bases de datos espaciales para la gestión integral de entidades.
Si buscas ampliar tus habilidades en el ámbito de las Tecnologías de la Información Geográfica, el curso proporcionará las herramientas y el conocimiento necesario para crear aplicaciones web interactivas y visualmente impactantes.

Consulta el programa completo en la web:


Publicado por Laura Olivas.

23 dic 2024

Publicada la convocatoria de becas de formación en el Instituto Geográfico Nacional


Nueva convocatoria de becas de formación en el Instituto Geográfico Nacional en las siguientes áreas de conocimiento: astronomía (2 becas), instrumentación astronómica y geoespacial (2), geodesia (1), geofísica (3), cartografía (3), tecnología de la información geoespacial (5) y documentación geográfica, cartográfica y bibliográfica (1).

Únicamente se podrá optar a una de las áreas de conocimiento.

Para poder optar a la convocatoria es necesario estar en posesión o en condiciones de obtener el título universitario oficial de grado, licenciado, ingeniero o arquitecto cuya última asignatura haya sido aprobada después del 22 de enero de 2021. También es válido una  ingeniera técnica si posteriormente se ha obtenido el título universitario oficial de máster.

La duración de la beca será de doce meses, prorrogable por períodos de doce meses, hasta un máximo de treinta y seis meses adicionales. La fecha de inicio de las becas será la del 1 de mayo de 2025 o la que se determine en la resolución de adjudicación, si es posterior.

La cuantía de la beca será de 1.200 euros mensuales.

Procedimiento de Solicitudes

Las solicitudes deben ser presentadas exclusivamente a través de la Sede electrónica del Ministerio de Transportes y Movilidad Sostenible. No se aceptan solicitudes enviadas por correo postal ni presentadas en forma presencial.
 
Plazo de presentación de solicitudes, veinte días hábiles: desde el día 23 de diciembre de 2024 al 22 de enero de 2025, ambos inclusive.

Consultas e información sobre becas
    Publicado por la editora.

    20 dic 2024

    30 aniversario de OGC


    El pasado 2 de diciembre, OGC celebró su 30º aniversario en Washington D.C con un evento especial llamado OGC@30, en el que líderes y expertos en el ámbito geoespacial ofrecieron valiosa información sobre la aplicación de tecnologías de vanguardia a los problemas actuales.

    Las conferencias principales estuvieron a cargo de: Vint Cerf, considerado uno de los padres de Internet, actualmente «Chief Internet Evangelist de Google»; y de Peter Bergen, periodista y actual analista de seguridad nacional en CNN.

    Se presentaron dos paneles de discusión titulados: «Interoperabilidad geoespacial y tecnología para la prestación eficiente de resultados del sector público» y «Una nueva era de interoperabilidad: transformando el mundo con datos geoespaciales». En ambos, a través de ejemplos del mundo real y perspectivas prácticas, los panelistas discutieron el potencial transformador de estas herramientas para romper los silos, compartir información crítica e impulsar cambios impactantes.

    Además, durante el acto se entregaron premios especiales, incluido el Premio a la Trayectoria que recayó en una figura clave en la historia de la organización, David Schelly, al que se le reconoció especialmente su contribución a los datos espaciales y la interoperabilidad de sistemas. En reconocimiento a su profundo impacto en la comunidad geoespacial y más allá, OGC anunció que el premio a la trayectoria ha cambiado de nombre y ahora se llamará premio David Schell.


    También se otorgaron otros galardones para miembros y organizaciones que han contribuido al avance de los estándares y las tecnologías geoespaciales, como el Premio a la Excelencia otorgado a la Autoridad General de Topografía e Información Geoespacial (GEOSA) y el premio al Impacto Global a Patrick Cozzi. Varios miembros del personal y de la junta directiva, tanto antiguos como actuales, también fueron distinguidos con premios al servicio. Consultar todos los premiados.

    OGC es una comunidad que lleva desde 1994 dedicada a utilizar el poder de la geografía y la tecnología para resolver los problemas que enfrentan las personas y el planeta, impulsando la colaboración y la interoperabilidad en el uso de datos geoespaciales, buscando soluciones a desafíos globales mediante estándares abiertos y proyectos de investigación conjuntos.

    Publicado por la editora.

    17 dic 2024

    Presentación del Proyecto DIS4SME y el Curso de Interoperabilidad para CEOs

     


    En un mundo donde la digitalización es clave para la competitividad empresarial, el proyecto DIS4SME (Data Interoperability Skills for SMEs) se posiciona como un aliado estratégico para las pequeñas y medianas empresas (pymes) que desean transformar sus procesos y adaptarse a los retos del mercado actual. Este proyecto, impulsado por la Agencia Ejecutiva Digital y de Sanidad Europea (HaDEA), busca dotar a las PYME de las competencias necesarias para orientar sus estrategias y planes de transformación digital en torno a la interoperabilidad de los datos, como facilitadora de todas las áreas de capacidad clave abordadas por el Programa Europa Digital.

    ¿Qué es DIS4SME? DIS4SME impartirá distintos tipos de cursos que respondan a las necesidades reales de las PYME en materia de interoperabilidad de datos, especialmente en lo relativo a la interoperabilidad de datos de localización, para cubrir las tendencias tecnológicas y políticas más avanzadas.

    El proyecto diseñará e impartirá cursos de formación de corta duración para la mejora y el reciclaje de la mano de obra, con especial atención a los propietarios, directivos y empleados de las PYME.

    A través de estos cursos, DIS4SME pretende no solo incrementar la eficiencia operativa de las pymes, sino también abrirles nuevas oportunidades de negocio en mercados digitales.

    Curso de Interoperabilidad para CEOs: Clave para el Liderazgo Digital el pilar del proyecto DIS4SME es la formación. Por ello, el próximo 24 de enero se impartirá un curso exclusivo de interoperabilidad dirigido a CEOs y líderes empresariales. Este curso tiene como objetivo proporcionar a los participantes las competencias necesarias para tomar decisiones informadas sobre cómo integrar y gestionar sistemas digitales de manera efectiva.

    ¿Por qué asistir a este curso? En un entorno empresarial cada vez más conectado, la interoperabilidad es un factor decisivo para:
    • Optimizar procesos internos: Reducir costos y mejorar la eficiencia al integrar sistemas y plataformas.
    • Facilitar la colaboración: Garantizar que su empresa pueda trabajar sin problemas con socios y proveedores.
    • Cumplir con normativas internacionales: Adoptar estándares que posicionen a su empresa como un jugador global.
    • Prepararse para el futuro: Construir una base sólida para la adopción de tecnologías emergentes, como la inteligencia artificial y el Internet de las cosas (IoT).
    Detalles del curso
    • Fecha: 24 de enero de 2025
    • Duración: 5 horas (de 10:00 a 13:00)
    • Modalidad: En línea
    • Idioma: Inglés
    • Contenido:
      • Introduction to data interoperability (45 min.)
      • Data policies and initiatives (30 min)
      • European Interoperability Framework (15 min.)
      • Data spaces (15 min.)
      • INSPIRE (15 min.)
      • Location frameworks (15 min.)
      • Data interoperability standards (15 min.)
      • Location data interoperability challenges & trends (30 min.)
      • Exercise (120 min.)
    ¿Cómo inscribirse? Las inscripciones ya están abiertas. Los interesados pueden registrarse a través del siguiente enlace: https://www.dis4sme.eu/courses/introduction-to-location-data-interoperability/scheduled-managers/

    Convierta la interoperabilidad en su ventaja competitiva. No deje pasar esta oportunidad de liderar el cambio en su organización. Con el respaldo del proyecto DIS4SME y el conocimiento adquirido en este curso, estará un paso más cerca de alcanzar sus objetivos empresariales en el mercado digital.

    ¡Le esperamos el 24 de enero!

    Publicado por Mayte Toscano

    16 dic 2024

    Eurostat lanza una plataforma enfocada al censo agrícola

    Eurostat ha lanzado una nueva plataforma de datos geoespaciales, que incluye los correspondientes al censo agrícola 2020, como parte de su colección de estadísticas experimentales. En ella, los usuarios pueden encontrar mapas detallados sobre explotaciones agrícolas, densidad de ganado, envejecimiento de agricultores y brechas de género.

    Los datos publicados bajo las nuevas estadísticas experimentales combinan información geográfica y estadísticas oficiales. Este enfoque innovador utiliza cuadrículas de hasta 1 km² de superficie para mostrar datos detallados, asegurando la confidencialidad de las explotaciones individuales, marcando el primer intento a escala europea de publicar datos geoespaciales agrícolas.

    Eurostat ofrece un mapa interactivo, desarrollado con el Sistema de Información Geográfica de la Comisión Europea, para explorar los datos geoespaciales del censo agrícola 2020. Las funciones incluyen zoom dinámico, selección de capas personalizadas y descarga de archivos para análisis avanzados.


    Esta herramienta permite a los países de la UE evaluar políticas agrícolas e implementar una planificación de recursos más precisa. Se trata de una herramienta crucial para cumplir con los objetivos de sostenibilidad establecidos por el Pacto Verde Europeo , especialmente en lo relacionado con la reducción de emisiones en la agricultura y la transición hacia prácticas más ecológicas.

    En el futuro, Eurostat tiene previsto incorporar datos del censo agrícola 2023 y nuevas capas de información, incluidos indicadores sobre el impacto del cambio climático, como son la disponibilidad de agua o los eventos climáticos extremos, para seguir mejorando el análisis agrícola.

    Publicado por la editora.

    13 dic 2024

    Nuevo geoportal para facilitar la reconstrucción de zonas afectadas por la DANA


    Arnaiz, una firma especializada en urbanismo y desarrollo inmobiliario, ha lanzado un geoportal, dedicado a la gestión y análisis de información sobre la DANA que afectó a la Comunidad Valenciana. Con él, se pretende contribuir a los esfuerzos de restauración de la región, así como a facilitar la gestión de riesgos mediante una única plataforma que centraliza información de diversas fuentes clave.

    Este geoportal integra más de 70 mapas de organismos como la Generalitat Valenciana, la Confederación Hidrográfica del Júcar, el Instituto Geográfico Nacional, el programa Copernicus de la Unión Europea y la NASA, entre otros. Su objetivo es facilitar la restauración de las áreas afectadas y mejorar la gestión de riesgos.

    La plataforma, desarrollada bajo la tecnología UrbiGIS, ofrece múltiples ventajas:
    • Acceso simplificado a información clave: Unifica datos geográficos de diversas fuentes, reduciendo la complejidad en su consulta.
    • Diagnóstico predictivo: Permite evaluar el impacto potencial de futuras catástrofes naturales para una mejor planificación.
    • Descarga de datos esenciales sobre catástrofes y riesgos: Brinda acceso a información útil para responder a emergencias y para la planificación en riesgos.
    Este geoportal no solo apoya los esfuerzos de recuperación tras el catastrófico evento que ha sido la DANA, sino que también contribuye a una preparación más efectiva ante futuras situaciones similares, promoviendo la resiliencia regional y mejorando la toma de decisiones.

    Publicado por la editora.

    12 dic 2024

    Servicio OGC API de procesos (OGC API Processes): Proceso elevationProfile.



    El proceso de OGC API ElevationProfile consiste en generar el perfil de elevaciones entre dos o más puntos. Para ello, se interpolan puntos intermedios en cada tramo, ajustando el número total de subtramos al valor entero más cercano al parámetro de distancia especificado. En casos donde se incluyen más de dos puntos, la longitud de los subtramos se calcula individualmente para cada tramo.

    Este cálculo se realiza utilizando el Modelo Digital del Terreno (MDT05) del Plan Nacional de Ortofotografía Aérea, proporcionado por el Instituto Geográfico Nacional. Para representar el perfil de elevaciones de manera más precisa, se recomienda incluir las coordenadas de los puntos en el perfil y calcular las distancias de los subtramos, lo que permite obtener información más detallada.

    En la página de API processes ElevationProfile se pueden consultar los parámetros de entrada y de salida.

    Datos de entrada:
    • «geom»: Parámetro obligatorio corresponde con la geometría de puntos o lista de puntos que van a ser procesados. Tipo de dato String
    • «formato»: parámetro obligatorio que indica el formato en que se proporciona la geometría del parámetro «geom». Los formatos soportados son GeoJSON (feature collection) y WKT (GeometryCollection, Multipoint o Point). Tipo de dato: string.
    • «crs» parámetro es opcional, que viene proporcionado por el sistema de referencia de los parámetros «geom», por defecto se utilizará el Sistema de referencia (EPSG: 4326). Tipo de dato: integer.
    • «distancia»distancia de referencia para el espaciado entre puntos intermedios, utilizados para la obtención del perfil, entre los puntos proporcionados en el parámetro geom. Las unidades son metros. La distancia por defecto es 20m y la mínima es 5m. Los puntos intermedios se crean según el parámetro distancia, creando un número entero de tramos iguales para los que se calcula el desnivel. Por la forma de cálculo, la distancia entre los puntos intermedios puede variar respecto a la introducida. Para representar correctamente el resultado se recomienda obtener los datos con coordenadas. Tipo de dato: integer.
    • «withCoord»es un valor booleano (true/false), en el caso que empleemos el valor true, obtenemos las coordenadas geográficas junto a sus altitudes, y en el caso de valores false, obtenemos solo el valor de la altitud o altitudes de los puntos asociados. Por defecto se utiliza el valor false. Tipo de dato: boolean.
    • «withDistances»es un parámetro booleano para obtener las longitudes de los subtramos calculados a partir de los puntos intermedios. Es un parámetro opcional. Si no se proporciona se considera false. Tipo de dato: boolean.
    Datos de salida:
    • «id»: Identificador del proceso.
    • «crs»identificador del sistema de referencia de las coordenadas calculadas.
    • «values» que es el resultado en forma de lista con las elevaciones para los puntos procesados, tanto dados como intermedios, en el mismo orden dado.
    • «distancias_sub»corresponde con una lista (array) de las distancias de los subtramos, en el mismo orden dado. Las distancias se calculan sobre el elipsoide por lo que puede haber ligeras diferencias respecto a las proyectadas.
    Ejecución del proceso:

    Para la ejecución del proceso se utiliza una función POST. Se accede a la dirección: https://api-processes.idee.es/processes/elevationProfile/execution y es obligatorio ejecutar la petición en JSON.

    Una opción para verificar los API de procesos es utilizar Swagger UI que ofrece la misma interfaz de procesos. Desde aquí podemos acceder al proceso elevationProfile de una manera sencilla, de modo que podemos verificar el procedimiento para la obtención del perfil de elevaciones entre dos o más puntos. 

    Proceso API de OGC del cálculo del perfil de elevaciones (elevationProfile)

    Otra forma más experta de explotar lo servicios es a través del comando cURL o de una biblioteca de Python llamada requests, como se detalla en los siguientes ejemplos.

    La geometría de las entidades espaciales (en formato WKT o GeoJSON) viene definida por el parámetro geom según se vaya a calcular el perfil, ya sea de forma simple por un punto de inicio y un punto final o por una serie de puntos de una ruta. A continuación, vemos diferentes casos partiendo de las coordenadas geográficas de dos o varios puntos en diferentes sistema de referencia WGS84 (EPSG:4326) y EPSG:25830. 

    GEOMETRÍA

    FORMATO WKT

    FORMATO GEOJSON

    EPSG: 4326

    EPSG: 25830

    EPSG: 4326

    DOS PUNTOS

    X

     

    X

    VARIOS PUNTOS

    X

    X

    X

    CÁLCULO DEL PERFIL DE ELEVACIÓN PARA DOS PUNTOS

    • Cálculo de un perfil de elevaciones para dos puntos y distancia en formato WKT en el Sistema de Referencia de Coordenadas EPSG 4326

    Vamos a calcular el perfil de elevaciones para unas coordenadas geográficas dadas en longitud y latitud, en el Sistema de referencia WGS84 (EPSG:4326) desde un punto de inicio situado en Cotos (-3.960924, 40.823162) a un punto de final de la Cima de Peñalara (-3.956023, 40.850026) (Figura 2).

    Representación de los puntos de inicio y final de una ruta en el visualizador IBERPIX.

    Para introducir las altitudes de los puntos de la ruta en el formato WKT, se puede utilizar geometría MULTIPOINT (conjunto de puntos). Sin embargo, no se pueden utilizar otros tipos de geometría como colección de geometrías, GeometryCollection, LINESTRING o POLYGON.

    El código JSON empleado para obtención del perfil de elevaciones en formato WKT y Sistema de Referencia WGS84 (EPSG 4326) es el siguiente:

     {
     "inputs": {
        "crs": 4326,

        "distance": 500,
        "formato": "wkt",
        "geom": "MULTIPOINT(-3.960924 40.823162, -3.956023 40.850026)",
        "withCoord": true,
        "withDistances": false,
       }
     }

    El cURL que se ejecuta:

    curl -X POST "https://api-processes.idee.es/processes/elevationProfile/execution" -H "accept: application/json" -H "Content-Type: application/json" -d "{\"inputs\":{\"crs\":4326,\"distance\":500,\"formato\":\"wkt\",\"geom\":\"MULTIPOINT(-3.960924 40.823162, -3.956023 40.850026)\",\"withCoord\":true,\"withDistances\":false}}"

    El resultado obtenido nos muestra las altitudes de los puntos:

     {
     "id": "ElevationProfile"
        "crs": 4326,

        "values": [,
         [
            -3.960924,
            40.823162,
            1821.1390380859375
         ],
         [
            
    -3.9601071666666665,
            
    40.82763933333334,
            
    1949.5150146484375
         ],
         [
            
    -3.959290333333333,
            
    40.83211666666667,
            
    2064.240966796875
         ],
         [
            
    -3.9584735,
            
    40.836594000000005,
            
    2065.27197265625
         ],

         [
            
    -3.957656666666667,
            
    40.84107133333333,
            
    2038.9560546875
         ],

         [
            
    -3.9568398333333334,
            
    40.845548666666666,
            
    2273.09912109375
         ],
         [
            
    -3.956023,
            
    40.850026,
            
    2426.860107421875
         ],
       ]
     }

    Ejemplo de petición desde script Python

    En el siguiente ejemplo se muestra cómo realizar la misma petición HTTP POST al servicio publicado en una OGC API processes desde un script de Python. Para ello, se utiliza la librería requests, cuya importación se realiza en la primera línea. Posteriormente se definen las variables «url» (texto con la URL a la que se va a realizar la petición) y «myObj» (json con los parámetros de entrada de la función a ejecutar). Por último, se realiza la petición y se guarda en el parámetro «result».

    Dentro de la variable tenemos distintos métodos, entre los que destacan: 
    • «request» para obtener los datos de la petición 
    • «.json()» para obtener el resultado de la operación ejecutada en formato json
    • «.status_code» para obtener el estado de la petición HTTP.

     import requests

     # URL del proceso en el processes
     url = 'https://api-processes.idee.es/processes/elevationProfile/execution'
     
     myObj = {
                 "inputs": {
                 "crs": 4326,
                 "distance": 500,
                 "formato": "wkt,
                 "formato": "geojson",
                 "geom": "MULTIPOINT(-3.960924 40.823162, -3.956023 40.850026)",
                  "withCoord": True,
                  "withDistances": false
     
              }
     }

     result = requests.post(url, json = myObj)

     print('resultado de la petición: ',result.request)
     print('resultado del proceso: ',result.json())
     print('estado de la petición: ',result.status_code)

    En los siguientes ejemplos sólo se muestra la petición cURL, por simplificar. Para crear el script de Python, solo habría que modificar el objeto myObj con el JSON indicado en cada caso.

    ·       Cálculo de un perfil de elevaciones a partir de dos puntos en formato GeoJSON en el Sistema de Referencia de Coordenadas WGS84 (EPSG 4326).

    Para el cálculo de un perfil de elevaciones de dos puntos de la ruta en formato GeoJSON y en el Sistema de Referencia de Coordenadas (EPSG: 4326), utilizaremos el siguiente código JSON:

     {
     "inputs": {
        "crs": 4326,

        "distance": 500,
        "formato": "geojson",
        "geom": 
    "{\"type\": \"FeatureCollection\",\"features\": [{\"geometry\": {\"coordinates\": [-3.960924,40.823162],\"type\": \"Point\"},\"type\": \"Feature\"},{\"geometry\": {\"coordinates\": [-3.956023,40.850026],\"type\": \"Point\"},\"type\": \"Feature\"}]}",
        "withCoord": true,
        "withDistances": true,
       }
     }

    El cURL que se ejecuta:

    curl -X POST "https://api-processes.idee.es/processes/elevationProfile/execution" -H "accept: application/json" -H "Content-Type: application/json" -d "{\"inputs\":{\"crs\":4326,\"distance\":500,\"formato\":\"geojson\",\"geom\":\"{\\\"type\\\": \\\"FeatureCollection\\\",\\\"features\\\": [{\\\"geometry\\\": {\\\"coordinates\\\": [-3.960924,40.823162],\\\"type\\\": \\\"Point\\\"},\\\"type\\\": \\\"Feature\\\"},{\\\"geometry\\\": {\\\"coordinates\\\": [-3.956023,40.850026],\\\"type\\\":\\\"Point\\\"},\\\"type\\\": \\\"Feature\\\"}]}\",\"withCoord\":true,\"withDistances\":true}}"

    El resultado obtenido nos muestra las altitudes de los puntos indicados de la ruta. Al utilizar el valor True en el parámetro «withoutCoord», se muestra en el resultado las coordenadas (longitud, latitud) y el valor de la altitud para ese punto. Asimismo, al indicar en el parámetro de entrada «distancias_sub» igual a True obtenemos la distancia de los subtramos:

     {
     "id": "ElevationProfile"
        "crs": 4326,

        "values": [,
         [
            -3.960924,
            40.823162,
            1821.1390380859375
         ],
         [
            
    -3.9601071666666665,
            
    40.82763933333334,
            
    1949.5150146484375
         ],
         [
            
    -3.959290333333333,
            
    40.83211666666667,
            
    2064.240966796875
         ],
         [
            
    -3.9584735,
            
    40.836594000000005,
            
    2065.27197265625
         ],

         [
            
    -3.957656666666667,
            
    40.84107133333333,
            
    2038.9560546875
         ],

         [
            
    -3.9568398333333334,
            
    40.845548666666666,
            
    2273.09912109375
         ],
         [
            
    -3.956023,
            
    40.850026,
            
    2426.860107421875
         ],
       ]
       "distancias_sub": [
        502,
        502,
        502,
        502,
        502,
        502,
       ]
     }

    CÁLCULO DEL PERFIL DE ELEVACIÓN PARA VARIOS PUNTOS

    Este proceso API de elevationProfile es también capaz de realizar el cálculo de perfiles de elevaciones para varios puntos de un recorrido. En los siguientes ejemplos se calculará el perfil de elevaciones para varios tramos. Para ello, siguiendo con el ejemplo, se añadirán varios puntos entre el punto de inicio y punto final en la ruta de senderismo desde Peñalara al Puerto de Cotos. De esta manera, se obtendrá un recorrido más realista y un análisis más detallado de la zona, como podemos ver la representación de los puntos en el visualizador IBERPIX.

    Representación de los puntos de la ruta de Peñalara en el visualizador IBERPIX.

    Los datos de entrada se dan en formato WKT en los Sistemas de Referencia de Coordenadas geográficas y proyectadas (EPSG: 4326 y EPSG:25830), y también, en formato GeoJSON en el Sistema de Referencia de Coordenadas geográficas (EPSG: 4326).

    FORMATO WKT

    • Cálculo de un perfil de elevaciones de varios puntos en formato WKT en el Sistema de Referencia de Coordenadas EPSG 4326.

    Para el cálculo de un perfil de elevaciones de los puntos de la ruta en formato WKT y en el Sistema de Referencia geográficas (EPSG:4326), utilizaremos el siguiente código JSON:

     {
     "inputs": {
        "crs": 4326,

        
    "distance": 500, 
        
    "formato": "wkt", 
        
    "geom": "MULTIPOINT(-3.960924 40.823162,-3.962104 40.824435,-3.95394 40.83086,-3.94661 40.84799,-3.94665 40.86077,-3.956023 40.850026)",
        
    "withCoord": true
        "withDistances": true
        }
    }

    El cURL que se ejecuta:

    curl -X POST "https://api-processes.idee.es/processes/elevationProfile/execution" -H "accept: application/json" -H "Content-Type: application/json" -d "{\"inputs\":{\"crs\":4326,\"distance\":500,\"formato\":\"wkt\",\"geom\":\"MULTIPOINT(-3.960924 40.823162,-3.962104 40.824435,-3.95394 40.83086,-3.94661 40.84799,-3.94665 40.86077,-3.956023 40.850026)\",\"withCoord\":true,\"withDistances\":true}}"


    El resultado obtenido corresponde a las altitudes de los puntos indicados de la ruta:

     {
     "id": "ElevationProfile"
        "crs": 4326,

        "values": [,
         [
            -3.960924,
            40.823162,
            1821.1390380859375
         ],
         [
            
    -3.962104,
            
    40.824435,
            
    1848.135986328125
         ],
         [
            
    -3.9580219999999997,
            
    40.8276475,
            
    1959.6820068359375
         ],
         [
            
    -3.95394,
            
    40.83086,
            
    1929.6490478515625
         ],

         [
            
    -3.9521075,
            
    40.8351425,
            
    1960.8199462890625
         ],
         [
            
    -3.950275,
            
    40.839425000000006,
            
    1950.9449462890625
         ],
         [
            
    -3.9484425,
            
    40.8437075,
            
    2048.321044921875
         ],
         [
            
    -3.94661,
            
    40.84799,
            
    2058.2919921875
         ],
         [
            
    -3.9466233333333336,
            
    40.852250000000005,
            
    2126.090087890625
         ],
         [
            
    -3.9466366666666666,
            
    40.85651,
            
    2152.4599609375
         ],
         [
            
    -3.94665,
            
    40.86077,
            
    2171.02587890625
         ],

         [
            
    -3.9497743333333335,
            
    40.857188666666666 ,
            
    2200.6220703125
         ],

         [
            
    -3.9528986666666666,
            
    40.853607333333336,
            
    2330.822998046875
         ],
         [
            
    -3.956023,
            
    40.850026,
            
    2426.860107421875
         ],
       ]
       "distancias_sub": [
        179.9,
        495.8,
        495.8,
        500.1,
        
    500.1,
        
    500.1,
        
    500.1,
        473.1,
        
    473.1,
        
    473.1,
        477,
        
    477,
        
    477,
       ]
     }

    • Cálculo de un perfil de elevaciones de varios puntos en formato WKT en el Sistema de Referencia de Coordenadas EPSG 25830.
    Para el cálculo de un perfil de elevaciones de los puntos de la ruta en formato WKT y en el Sistema de Referencia de Proyección UTM ETRS89 Huso 30 N (EPSG:25830), utilizaremos el siguiente código JSON:

     {
     "inputs": {
        "crs": 25830,

        
    "distance": 500, 
        
    "formato": "wkt", 
        
    "geom": "MULTIPOINT (418968.652 4519570.898,418870.696 4519713.303,419566.899 4520419.007,420205.495 4522313.881,420217.458 4523732.611,419414.489 4522548.480)",
        
    "withCoord": true
        "withDistances": true
        }
    }

    El cURL que se ejecuta:

    curl -X POST "https://api-processes.idee.es/processes/elevationProfile/execution" -H "accept: application/json" -H "Content-Type: application/json" -d "{\"inputs\":{\"crs\":25830,\"distance\":500,\"formato\":\"wkt\",\"geom\":\"MULTIPOINT(418968.652 4519570.898,418870.696 4519713.303,419566.899 4520419.007,420205.495 4522313.881,420217.458 4523732.611,419414.489 4522548.480)\",\"withCoord\":true,\"withDistances\":true}}"


    El resultado obtenido corresponde a las altitudes de los puntos indicados de la ruta y las distancias de los subtramos:

     {
     "id": "ElevationProfile"
        "crs": 25830,

        "values": [,
         [
            
    418968.652,
            
    4519570.897999999,
            
    1821.1390380859375
         ],
         [
            
    418870.696,
            
    4519713.303000001,
            
    1848.135986328125
         ],
         [
            
    419218.81401861215,
            
    4520066.146946875,
            
    1959.6820068359375
         ],
         [
            
    419566.899,
            
    4520419.006999999,
            
    1929.6490478515625
         ],
         [
            
    419726.5771805296,
            
    4520892.720246325,
            
    1960.8199462890625
         ],
         [
            
    419886.23590908386,
            
    4521366.436994881,
            
    1950.9449462890625
         ],
         [
            
    420045.8751830962,
            
    4521840.157245996,
            
    2048.321044921875
         ],
         [
            
    420205.49500000005,
            
    4522313.881000001,
            
    2058.2919921875
         ],
         [
            
    420209.4820795562,
            
    4522786.7906584535,
            
    2126.090087890625
         ],
         [
            
    420213.46974622586,
            
    4523259.700658451,
            
    2152.4599609375
         ],
         [
            
    420217.458,
            
    4523732.611 ,
            
    2152.4599609375
         ],

         [
            
    419949.8297594411,
            
    4523337.891134621 ,
            
    2200.6220703125
         ],

         [
            
    419682.17342513846,
            
    4522943.180801501,
            
    2330.822998046875
         ],
         [
            
    419414.489,
            
    4522548.4799999995,
            
    2426.860107421875
         ],
       ]
       "distancias_sub": [
        179.9,
        495.8,
        495.8,
        500.1,
        
    500.1,
        
    500.1,
        
    500.1,
        473.1,
        
    473.1,
        
    473.1,
        477,
        
    477,
        
    477,
       ]
     }

    FORMATO GEOJSON
    • Cálculo de un perfil de elevaciones de varios puntos en formato GeoJSON en el Sistema de Referencia de Coordenadas EPSG 4326.
    En el caso que quisiéramos obtener las altitudes de una colección o listado de puntos, en el formato GeoJSON en el Sistema de Coordenadas de Referencia WGS84 (EPSG 4326) que viene dado en longitud y latitud, el código JSON de entrada de este proceso es:

     {
     "inputs": {
        "crs": 4326,

        
    "distance": 500, 
        
    "formato": "geojson", 
        
    "geom": "{\"type\": \"FeatureCollection\",\"features\": [{\"geometry\": {\"coordinates\": [-3.960924,40.823162],\"type\": \"Point\"},\"type\": \"Feature\"},{\"geometry\": {\"coordinates\": [-3.962104, 40.824435],\"type\": \"Point\"},\"type\": \"Feature\"},{\"geometry\": {\"coordinates\": [-3.95394, 40.83086],\"type\": \"Point\"},\"type\": \"Feature\"},{\"geometry\": {\"coordinates\": [-3.94661, 40.84799],\"type\": \"Point\"},\"type\": \"Feature\"},{\"geometry\": {\"coordinates\": [-3.94665, 40.86077],\"type\": \"Point\"},\"type\": \"Feature\"},{\"geometry\": {\"coordinates\": [-3.956023, 40.850026],\"type\": \"Point\"},\"type\": \"Feature\"}]}",
        
    "withCoord": true
        "withDistances": true
        }
    }

    El cURL que se ejecuta:

    curl -X POST "https://api-processes.idee.es/processes/elevationProfile/execution" -H "accept: application/json" -H "Content-Type: application/json" -d "{\"inputs\":{\"crs\":4326,\"distance\":500,\"formato\":\"geojson\",\"geom\":\"{\\\"type\\\": \\\"FeatureCollection\\\",\\\"features\\\": [{\\\"geometry\\\": {\\\"coordinates\\\": [-3.960924,40.823162],\\\"type\\\": \\\"Point\\\"},\\\"type\\\": \\\"Feature\\\"},{\\\"geometry\\\": {\\\"coordinates\\\": [-3.962104, 40.824435],\\\"type\\\": \\\"Point\\\"},\\\"type\\\": \\\"Feature\\\"},{\\\"geometry\\\": {\\\"coordinates\\\": [-3.95394, 40.83086],\\\"type\\\": \\\"Point\\\"},\\\"type\\\": \\\"Feature\\\"},{\\\"geometry\\\": {\\\"coordinates\\\": [-3.94661, 40.84799],\\\"type\\\": \\\"Point\\\"},\\\"type\\\": \\\"Feature\\\"},{\\\"geometry\\\": {\\\"coordinates\\\": [-3.94665, 40.86077],\\\"type\\\": \\\"Point\\\"},\\\"type\\\": \\\"Feature\\\"},{\\\"geometry\\\": {\\\"coordinates\\\": [-3.956023, 40.850026],\\\"type\\\": \\\"Point\\\"},\\\"type\\\": \\\"Feature\\\"}]}\",\"withCoord\":true,\"withDistances\":true}}"


    El resultado obtenido corresponde a las altitudes de los puntos indicados de la ruta:

     {
     "id": "ElevationProfile"
        "crs": 4326,

        "values": [,
         [
            -3.960924,
            40.823162,
            1821.1390380859375
         ],
         [
            
    -3.962104,
            
    40.824435,
            
    1848.135986328125
         ],
         [
            
    -3.9580219999999997,
            
    40.8276475,
            
    1959.6820068359375
         ],
         [
            
    -3.95394,
            
    40.83086,
            
    1929.6490478515625
         ],

         [
            
    -3.9521075,
            
    40.8351425,
            
    1960.8199462890625
         ],
         [
            
    -3.950275,
            
    40.839425000000006,
            
    1950.9449462890625
         ],
         [
            
    -3.9484425,
            
    40.8437075,
            
    2048.321044921875
         ],
         [
            
    -3.94661,
            
    40.84799,
            
    2058.2919921875
         ],
         [
            
    -3.9466233333333336,
            
    40.852250000000005,
            
    2126.090087890625
         ],
         [
            
    -3.9466366666666666,
            
    40.85651,
            
    2152.4599609375
         ],
         [
            
    -3.94665,
            
    40.86077,
            
    2171.02587890625
         ],

         [
            
    -3.9497743333333335,
            
    40.857188666666666 ,
            
    2200.6220703125
         ],

         [
            
    -3.9528986666666666,
            
    40.853607333333336,
            
    2330.822998046875
         ],
         [
            
    -3.956023,
            
    40.850026,
            
    2426.860107421875
         ],
       ]
       "distancias_sub": [
        179.9,
        495.8,
        495.8,
        500.1,
        
    500.1,
        
    500.1,
        
    500.1,
        473.1,
        
    473.1,
        
    473.1,
        477,
        
    477,
        
    477,
       ]
     }

    Si representamos el perfil de elevaciones de la ruta con los resultados obtenidos de los puntos intermedios y distancias de los subtramos, obtendríamos el siguiente gráfico en una hoja de cálculo Excel:

    Representación gráfica del perfil de elevaciones de la ruta de senderismo calculada con API Processes elevationProfile

    Este artículo forma parte de una serie,  para saber más sobre OGC API Processes y otros procesos del Servicio OGC API procesos del CNIG consulta el 
    artículo índice.

    Publicado por María José García Rodríguez.