El texto conocido ( WKT ) es un lenguaje de marcado de texto para representar objetos de geometría vectorial . Su equivalente binario , conocido como binario conocido ( WKB ), se utiliza para transferir y almacenar la misma información de forma más compacta, conveniente para el procesamiento informático, pero que no es legible para humanos. Los formatos fueron definidos originalmente por el Open Geospatial Consortium (OGC) y descritos en su documento Simple Feature Access . [ 1 ] La definición estándar actual se encuentra en la norma ISO/IEC 13249-3:2016. [ 2 ]
objetos geométricos
WKT puede representar los siguientes objetos geométricos distintos:
- Punto , Multipunto
- Cadena de línea , Cadena de varias líneas
- Polígono , Multipolígono, Triángulo
- Superficie poliédrica
- TIN ( Red irregular triangulada )
- Colección de Geometría
Las coordenadas para geometrías pueden ser 2D ( x , y ), 3D ( x , y , z ), 4D ( x , y , z , m ) con un valor m que forma parte de un sistema de referencia lineal o 2D con un valor m ( x , y , m ). Las geometrías tridimensionales se designan con una "Z" después del tipo de geometría y las geometrías con un sistema de referencia lineal llevan una "M" después del tipo de geometría. Las geometrías vacías que no contienen coordenadas se pueden especificar utilizando el símbolo EMPTYdespués del nombre del tipo.
Las geometrías WKT se utilizan en todas las especificaciones de OGC y están presentes en las aplicaciones que implementan dichas especificaciones. Por ejemplo, PostGIS incluye funciones que permiten convertir geometrías a y desde una representación WKT, facilitando así su lectura por parte de los humanos.
La definición estándar de OGC requiere que un polígono sea topológicamente cerrado. También establece que si el anillo lineal exterior de un polígono se define en sentido antihorario, se verá desde la parte superior. Los anillos lineales interiores deben definirse en sentido opuesto al anillo exterior, en este caso, en sentido horario. [ 3 ]
A continuación se muestran otros ejemplos de cadenas WKT geométricas: (Nota: Cada elemento que aparece a continuación es una geometría individual).
COLECCIÓN DE GEOMETRÍA (PUNTO (4 6), CUERDA DE LÍNEAS (4 6,7 10)) PUNTO ZM (1 1 5 60) PUNTO M (1 1 80) PUNTO VACÍO MULTIPOLÍGONO VACÍO TRIÁNGULO((0 0 0,0 1 0,1 1 0,0 0 0)) TIN (((0 0 0, 0 0 1, 0 1 0, 0 0 0)), ((0 0 0, 0 1 0, 1 1 0, 0 0 0))) SUPERFICIE POLIÉDRICA Z (PARCHES) ((0 0 0, 0 1 0, 1 1 0, 1 0 0, 0 0 0)), ((0 0 0, 0 1 0, 0 1 1, 0 0 1, 0 0 0)), ((0 0 0, 1 0 0, 1 0 1, 0 0 1, 0 0 0)), ((1 1 1, 1 0 1, 0 0 1, 0 1 1, 1 1 1)), ((1 1 1, 1 0 1, 1 0 0, 1 1 0, 1 1 1)), ((1 1 1, 1 1 0, 0 1 0, 0 1 1, 1 1 1)) ) Binario bien conocido
Las representaciones binarias (WKB) más conocidas se suelen mostrar en cadenas hexadecimales .
El primer byte indica el orden de bytes para los datos:
0x00: big endian0x01: little endian
Los siguientes 4 bytes son un entero sin signo de 32 bits para el tipo de geometría, como se describe a continuación:
Cada tipo de dato tiene una estructura de datos única, como el número de puntos o anillos lineales, seguido de coordenadas en números de doble precisión de 64 bits .
Por ejemplo, la geometría POINT(2.0 4.0)se representa como: , donde:000000000140000000000000004010000000000000
- Entero de 1 byte
00o 0: big endian - Entero de 4 bytes
00000001o 1: PUNTO (2D) - Número flotante de 8 bytes
4000000000000000o 2.0: coordenada x - Número flotante de 8 bytes
4010000000000000o 4.0: coordenada y
Variaciones de formato
- EWKT y EWKB – Texto/Binario Bien Conocido Extendido
- Un formato específico de PostGIS que incluye el identificador del sistema de referencia espacial (SRID) y hasta 4 valores de ordenadas (XYZM). [ 4 ] [ 5 ] Por ejemplo: para ubicar una coordenada de longitud/latitud usando el sistema de coordenadas de referencia WGS 84. También admite curvas circulares, siguiendo los elementos nombrados (pero no completamente definidos) dentro del WKT original: CircularString, CompoundCurve, CurvePolygon y CompoundSurface. [ 6 ]
SRID=4326;POINT(-44.360.1) - Texto AGF – Formato de geometría de Autodesk
- Una extensión del estándar de OGC (en ese momento), para incluir elementos curvos; utilizado sobre todo en MapGuide . [ 7 ]
Véase también
Referencias
- ↑ Herring, John R., ed. (28 de mayo de 2011), Estándar de implementación de OpenGIS® para información geográfica: acceso simple a características - Parte 1: arquitectura común , Open Geospatial Consortium , consultado el 28 de enero de 2019.
- ↑ Tecnología de la información – Lenguajes de bases de datos – Paquetes de aplicaciones y multimedia SQL – Parte 3: Espacial (5.ª ed.), ISO , 15/01/2016 , consultado el 28/01/2019
- ↑ Consulte la Especificación de Implementación de OGC para información geográfica: Acceso Simple a Características, sección 6.1.11.1. http://www.opengeospatial.org/standards/sfa
- ↑ "Postgis/Postgis" . GitHub . 6 de octubre de 2021.
- ↑ "ST_GeomFromEWKT" . Consultado el 25 de noviembre de 2022 .
- ↑ "Capítulo 4: Uso de PostGIS: Gestión de datos y consultas" . postgis.net . Consultado el 30 de julio de 2021 .
- ↑ "Referencia de la API de MapGuide: Texto AGF" . Consultado el 14 de septiembre de 2023 .
Enlaces externos
- Especificación de acceso a características simples
- Norma espacial ISO (este servicio tiene un coste adicional).
- Notación BNF de WKT archivada el 3 de enero de 2023 en Wayback Machine.
- Notación EBNF de WKT
- Conversión en línea entre representaciones de objetos geométricos. Archivado el 26/04/2019 en Wayback Machine.
- formatos de archivo SIG
- Lenguajes de marcado