¿Cómo convertir un archivo shape a WKT?


12

Estoy tratando de convertir un archivo de forma al formato simple de texto bien conocido (WKT) en el siguiente ejemplo (de http://en.wikipedia.org/wiki/Well-known_text ).

MULTIPOLYGON (((40 40, 20 45, 45 30, 40 40)),
((20 35, 45 20, 30 5, 10 10, 10 30, 20 35),
(30 20, 20 25, 20 15, 30 20)))

Sé que uso QGIS para guardar el archivo de forma como CSV, y puedo usar ogr2ogr para hacer cualquier número de conversiones. De hecho, ogr2ogr -f CSV out.wkt source.shp -lco GEOMETRY=AS_WKTme acerca tanto como he llegado hasta ahora, pero no del todo. ¿Alguna sugerencia?

ps Como señaló Mapperz, este hilo es muy similar a este . Ese hilo, si bien proporcionó el enfoque ogr2ogr que mencioné anteriormente, no resolvió este desafío en particular. El resultado de ogr2ogr que obtengo se ve así (he truncado las líneas). Aparentemente, simplemente no he descubierto cómo hacer que ogr2ogr use multipolígono.

WKT,AREA,PERIMETER,PINUPOND_,PINUPOND_I,CODE
"POLYGON ((-120.630531650950061 50.838562484449184, . . .
"POLYGON ((-123.206067372148397 51.038984074378327, . . .


¿Cuál es el problema con la salida de ogr2ogr?
til_b

@til_b: direccionado en edición.
Gregory

1
¿Es tu forma MULTIPOLÍGONO?
Jürgen Zornig

@ JürgenZornig: ¿Cómo puedo saberlo? Tendría sentido que fuera un multipolígono, pero me gustaría verificarlo.
Gregory

Respuestas:


10

Texto bien conocido no está destinado a guardar capas como archivos de formas que constan de muchos objetos. WKT define cómo representar la geometría de un objeto. Esa geometría podría ser de una o varias partes. Las geometrías de múltiples partes significan que la geometría de un objeto consta de muchas partes. Por ejemplo, las islas hawaianas podrían representarse como un solo objeto, pero consta de muchas geometrías.

El archivo de forma es una colección de este tipo de objetos. Los objetos suelen tener también información de atributos que también forma parte de un archivo de forma.

Su enfoque ogr2ogr convierte estos objetos a formato csv con geometría WKT (y representaciones de texto de los atributos). Si realmente desea combinar todas las geometrías en un MULTIPOLÍGONO, primero debe convertir todos los objetos en una geometría múltiple. Puedes hacer eso en QGIS. Seleccione desde el menú Vector Herramientas de geometría y luego Piezas sueltas a imágenes prediseñadas. Luego puedes convertir eso a wkt con ogr2ogr.

Esperemos que esto tenga sentido.


Eso tiene sentido y tendré la oportunidad de probarlo en breve.
Gregory

De acuerdo, en QGIS, utilicé Vector / Herramientas de geometría / Partes individuales para multiparte. Guardé la salida como un nuevo archivo de forma, pero cuando cargué ese archivo en QGIS, aparece en blanco y la tabla de atributos está completamente vacía (quizás nulo sería una mejor descripción, ya que tampoco hay encabezados).
Gregory

¿@Pyrogerg seleccionó algún campo único cuando la herramienta lo solicitó? Eso significa que la herramienta "agrupa" todas las características que tienen el mismo valor en ese campo. Si no tiene ningún campo que desee que sea único, puede crear uno con la calculadora de campo. Puede acceder a eso desde la tabla de atributos. Asegúrese de que la capa esté en modo de edición (icono de lápiz). Luego seleccione la Calculadora de campo y "calcule", por ejemplo, el valor 1 para cada fila de un nuevo campo.
LauriK

1
+1 Me tomé la libertad de aclarar aún más su edición al mencionar explícitamente que la salida incluirá los atributos.
whuber

5

Escribí un complemento QGIS que guarda inmediatamente la capa activa en un archivo .wkt.

El nombre del complemento es "WktExport". Puede buscarlo en el panel de complementos QGIS predeterminado.

Por cierto, el enlace a la página del complemento es este:

https://plugins.qgis.org/plugins/wktexport/

El complemento "WktExport" para QGIS crea una carpeta, llamada "WktExport", donde se encuentra el SHP original, e inserta en la carpeta un archivo .wkt que contiene los elementos en formato ASCII WKT de todos los objetos de SHP (pero también KML u otro archivo original formato).

El nombre del .wkt tiene dentro de la fecha y hora de guardado, por lo que al guardarlo muchas veces, tendrá muchas versiones del mismo archivo.

Esto podría ser útil para crear animaciones de un progreso de trabajo cartográfico o para documentar el estado actual de un archivo.

Envíe un mensaje a la lista qgis-developer, especialmente si considera que wktexport es útil.


El enlace del proyecto está roto.
Luke Hutchison
Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.