¿Cómo puedo obtener la cadena proj4 o el código EPSG de un archivo .prj de shapefile? [duplicar]

17

Tengo que trabajar con un shapefile definido en una proyección inusual, que mi software GIS no conoce. ¿Cómo puedo obtener la definición de proj4 o el código EPSG para la proyección?

    
pregunta rudivonstaden 22.03.2013 - 10:20

3 respuestas

25

El shapefile debe tener un archivo .prj que defina la proyección. Puede usarlo junto con una de las siguientes 3 opciones para obtener la cadena proj4, la definición WKT o el código EPSG.

Para obtener la definición de proj4:

Si tiene gdal instalado en su sistema, puede usar la aplicación de línea de comandos gdalsrsinfo para obtener la definición de proj4 como la definición de OGC WKT:

$ gdalsrsinfo <shapefile>.prj

Exampe:

$ gdalsrsinfo 7490.prj 

PROJ.4 : '+proj=aea +lat_1=-18 +lat_2=-32 +lat_0=0 +lon_0=24 +x_0=0 +y_0=0 +datum=WGS84 +units=m +no_defs '

OGC WKT :
PROJCS["Albers_Equal_Area_Conic_South_Africa",
    GEOGCS["GCS_WGS_1984",
        DATUM["WGS_1984",
            SPHEROID["WGS_84",6378137,298.257223563]],
        PRIMEM["Greenwich",0],
        UNIT["Degree",0.017453292519943295]],
    PROJECTION["Albers_Conic_Equal_Area"],
    PARAMETER["False_Easting",0],
    PARAMETER["False_Northing",0],
    PARAMETER["longitude_of_center",24],
    PARAMETER["Standard_Parallel_1",-18],
    PARAMETER["Standard_Parallel_2",-32],
    PARAMETER["latitude_of_center",0],
    UNIT["Meter",1]]

Para obtener el número de EPSG:

Puede usar el servicio prj2epsg.org para cargar el archivo .prj y obtener una lista de los códigos EPSG correspondientes. Advertencia: prj2epsg.org devuelve la lista de códigos que coinciden con mejor . Puede ser que ninguno de ellos sea correcto.

Usando python:

Si se siente cómodo con Python, puede usar el guión muy útil en ¿Shapefile PRJ a PostGIS SRID tabla de búsqueda? para obtener el código WKT, proj4 y EPSG.

Ver también:

Puede encontrar definiciones para la mayoría de las proyecciones estándar en spatialreference.org .

    
respondido por el rudivonstaden 22.03.2013 - 10:20
4

La aplicación gdal gdalsrsinfo produce muchas representaciones diferentes de un srs:

[email protected]:~$ gdalsrsinfo epsg:4326 -o all

PROJ.4 : '+proj=longlat +datum=WGS84 +no_defs '

OGC WKT :
GEOGCS["WGS 84",
    DATUM["WGS_1984",
        SPHEROID["WGS 84",6378137,298.257223563,
            AUTHORITY["EPSG","7030"]],
        AUTHORITY["EPSG","6326"]],
    PRIMEM["Greenwich",0,
        AUTHORITY["EPSG","8901"]],
    UNIT["degree",0.0174532925199433,
        AUTHORITY["EPSG","9122"]],
    AUTHORITY["EPSG","4326"]]

OGC WKT (simple) :
GEOGCS["WGS 84",
    DATUM["WGS_1984",
        SPHEROID["WGS 84",6378137,298.257223563]],
    PRIMEM["Greenwich",0],
    UNIT["degree",0.0174532925199433]]

OGC WKT (no CT) :
GEOGCS["WGS 84",
    DATUM["WGS_1984",
        SPHEROID["WGS 84",6378137,298.257223563]],
    PRIMEM["Greenwich",0],
    UNIT["degree",0.0174532925199433]]

ESRI WKT :
GEOGCS["GCS_WGS_1984",
    DATUM["D_WGS_1984",
        SPHEROID["WGS_1984",6378137,298.257223563]],
    PRIMEM["Greenwich",0],
    UNIT["Degree",0.017453292519943295]]

...

Puede ingresar cadenas de proj.4, cadenas de trabajo o códigos epsg. Desde gdal 1.9 (creo).

    
respondido por el user10353 23.03.2013 - 18:43
3

Siempre he usado grep para obtener esta información:

ogrinfo -so <shapefile>.shp | grep -e "ESPG"
    
respondido por el ShaunLangley 22.03.2013 - 15:45

Lea otras preguntas en las etiquetas