¿Hay alguna forma eficiente de convertir Geojson a WKT?

10

Quiero usar ST_GeomFromText () para cargar datos vectoriales a PostGIS. Sin embargo, no sé cómo convertir del tipo Geojson a WKT.

Nota: Sé que puedo usar OGR2OGR para cargar el geojson directamente, pero solo quiero confirmar si hay alguna forma de convertirlo o no. Gracias.

Yu Guo
fuente
ogr2ogr podría ser una forma
debajo del radar
Eficiente de qué manera?
RK
1
Si su versión PostGIS> 2, importa GeoJSON directamente.
Devdatta Tengshe

Respuestas:

11

por qué no usar

  • ST_GeomFromGeoJSON que toma como entrada una representación geojson de una geometría y genera un objeto de geometría PostGIS.
  • ST_AsGeoJSON , el inverso

vea Crear colecciones de características GeoJSON con funciones JSON y PostGIS o ST_GeomFromGeoJSON desde OpenGeo.

Para convertir a WKT, use

  • ST_AsText , el reverso de ST_GeomFromText () que devuelve el texto conocido (WKT)
  • ST_AsEWKT igual con metadatos SRID
gene
fuente
Hola muchas gracias Ni siquiera conozco esta herramienta. Todavía estoy aprendiendo de ti como estudiante.
Yu Guo
7

Si Python es lo tuyo, entonces puedes usar GeoMet . Es un módulo de Python que convierte GeoJSON a WKT / WKB y viceversa. Puede instalarlo directamente desde el repositorio de github usando pip

$ pip install git+git://github.com/larsbutler/geomet.git

Aquí hay una conversión de muestra:

>>> from geomet import wkt
>>> point = {'type': 'Point', 'coordinates': [116.4, 45.2, 11.1]}
>>> wkt.dumps(point, decimals=4)
'POINT (116.4000 45.2000 11.1000)'
RK
fuente