Cómo convertir un shapefile en WKT

La representación Well Known Text (WKT) o de texto conocido, es una codificación o sintaxis en formato ASCII estandarizada diseñada para describir objetos espaciales expresados de forma vectorial.

La sintaxis WKT consta de una descripción de los vértices que componen la geometría.

Las especificaciones OGC e ISO definen tanto las representaciones de texto como las  binarias para objetos geométricos, WKT y WKB (Well Know Binary o binario conocido). Ambas representaciones incluyen información sobre el tipo del objeto y las coordenadas que forman el objeto.

Ejemplos de representaciones de texto (WKT) de los objetos espaciales son los siguientes:

  • Punto: POINT(5 2)
  • Línea: LINESTRING(0 0,1 1,1 2)
  • Multilínea: MULTILINESTRING( (1 1, 5 5, 10 10, 20 20),(20 30, 10 15, 40 5) )
  • Polígono simple: POLYGON ((0 0, 10 0, 10 10, 0 0))
  • Multipolígono: MULTIPOLYGON ( (0 0, 10 0, 10 10, 0 10, 0 0),( 20 20, 20 40, 40 40, 40 20, 20 20) )
  • Colección de geometrías: GEOMETRYCOLLECTION(POINT(4 3),LINESTRING(2 3,3 6))

Muchas de las bases de datos espaciales, y en especial PostgreSQL a través de su extensión para el almacenamiento y análisis espacial PostGIS, utiliza esta codificación. Además WKT es la base de otros formatos más conocidos como el KML utilizado en Google Maps y Google Earth. Por lo tanto saber como convertir un shapefile en WKT es de mucha utilidad.

Exportar un SHP a WKT con QGIS

En este ejemplo vamos a exportar un shapefile de ciudades a WKT utilizando QGIS.

En QGIS debemos activar la capa que queremos exportar e ir al menú superior Capa > Guardar como…

  • En formato elegiremos Valores separados por comas (CSV).
  • Establecemos un nombre para el archivo de salida.
  • En las opciones de capa seleccionaremos:
    • Como tipo de geometría WKT ( GeometryAS_WKT)
    • En Lineformat establecemos el valor a CRLF.

Pinchamos en Aceptar y conseguimos el archivo csv que contendrá el listado de nuestras ciudades con su geometría en formato WKT:

wkt_csv

Como se puede apreciar en la imagen superior, hemos obtenido una geometría para cada objeto geográfico (partes simples), es decir cada objeto geográfico es una geometría con sus atributos.

Extraer la geometrías WKT en PostGIS

En PostGIS el proceso es más sencillo, basta con ejecutar una consulta SQL. Utilizamos la función ST_AsText () para hacer que el valor de la geometría sea un poco más legible.

Esta función nos devuelve el texto WKT (Well-Known Text):

«POINT(-3.683352 40.400026)»

 

Let’s connect!

Date de alta en nuestro newsletter
y recibe este ebook gratuito

Y una vez al mes recibirás las últimas novedades del sector GIS y de nuestros cursos