Me preguntaba si existe algo así como un PRJ de archivo de forma a la tabla de búsqueda SRID de PostGIS. Algo que puede traducir las definiciones de PRJ de shapefile más estándar en el SRID probable.
Cuando usa PostGIS y pgAdminIII, si usa postgisgui para importar sus archivos de forma, el SRID se deja como "-1". Parece que la herramienta debería poder analizar el Esri PRJ y determinar la correcta (o al menos un par de opciones) que son los SRID probables, en lugar de simplemente dejar el valor predeterminado.
¿O tiene el importador la capacidad de reproyectar sobre la marcha si elige otro SRID?
Puede parecer flojo de mi parte, pero para mí parece curioso que esta función aún no se haya implementado. ¿Alguien sabe si este concepto está en proceso, o hay buenas razones por las que se ha dejado de lado?
fuente
GDAL tiene una interfaz agradable y conveniente para la biblioteca PROJ4.
Si tiene confianza en Python, utilizando los enlaces Python de GDAL, si importa las clases osr, tendrá métodos muy convenientes para leer y exportar representaciones de proyección a una variedad de formatos como PROJ4, WKT, Esri .PRJ.
Por ejemplo, este script convertirá su archivo .PRJ de su shapefile a WKT y PROJ4 (el último se usa desde PostGIS):
Ejecute esto en la línea de comando:
fuente
+proj=longlat +datum=WGS84 +no_defs
no está en laspatial_ref_sys
tabla, por lo que no puede usar la salida para buscar el SRID; y (2) parece que no puedo encontrar ninguna propiedad o método SRID (hay unImportFromEPSG(SRID)
método útil , pero no al revés)gdalsrsinfo
yogrinfo
fallar, este es el camino a seguir!srs.GetAuthorityCode(None)
aún podría devolver ninguno si no se identificó un SRID cercano.Ha pasado un tiempo desde que usé las cuadrículas POSTGIS, pero si son solo códigos EPSG, puede usar http://prj2epsg.org/search para buscarlos desde archivos ESRI.prj (rotos).
fuente
Como una combinación de soluciones, he creado un script para ayudarme a cargar archivos de formas arbitrarias en postgis. También intenta detectar la codificación del DBF.
fuente
srsly Yo quiero uno también.
Muchas personas parecen buscarlos en http://spatialreference.org
Cuando importa archivos de forma usando PostGIS (y el cargador PostGIS para PGAdmin), busca la información del proyecto en una tabla llamada spatial_ref_sys.
Por lo que entiendo, la tabla spatial_ref_sys estándar empaquetada con PostGIS incluye solo representaciones OGC WKT (Open Geospatial Consortium Well Known Text) de algunos sistemas de referencia espacial y NO los sistemas de referencia espacial ESRI.
De la documentación de PostGIS 1.5.2:>
Sin embargo, ogr2ogr contiene sistemas de referencia espacial ESRI como aprendí recientemente a través de la generosidad de otros.
Tanto en ogr2ogr como spatial_ref_sys, parece que el texto contenido en el archivo .proj se compara con una tabla de OGC WKT, que es un formato de texto ligeramente diferente del formato ESRI WKT que a menudo se encuentra en un archivo .proj. Además, no estoy seguro de cómo PostGIS busca cada SRS, pero las pequeñas diferencias entre ESRI WKT y OGC WKT pueden dar lugar a coincidencias fallidas.
Parece que sería simple adjuntar los sistemas de referencia espacial ESRI a la tabla spatial_ref_sys predeterminada en PostGIS. Quizás alguien ya lo haya hecho, con algún parche o un guión.
Podría estar equivocado, porque me he topado con esto durante los últimos días y me he sentido frustrado con lo mismo. ¿Quizás alguien más conoce un gran recurso?
fuente
Ha pasado un tiempo desde que lo necesitaba, pero, según recuerdo, http://spatialreference.org/ además de permitirle buscar, también le ofrece la opción de cargar un archivo prj.
Luego, como una de las opciones de salida, le dará la inserción postgis equivalente para insertar en la tabla spatial_ref_sys.
Para la instrucción de inserción que proporciona, reemplazo la cuadrícula generada que crea con la EPSG o ESRI. Si obtiene una violación de clave principal, entonces lo más probable es que ya esté en la tabla.
fuente