shp - shapefile arcgis
¿Cómo se sabe qué SRID usar para un archivo shp? (6)
Asegúrese de echar un vistazo a: http://www.epsg-registry.org/
Use la opción Consultar por filtro e ingrese: Datum norteamericano 1983.
Esto produce -> EPSG: 6269.
Espero que esto funcione para usted.
Estoy tratando de poner un archivo SHP en mi base de datos PostGIS, la información está un poco desactualizada. Creo que esto es porque estoy usando el SRID equivocado. Los contenidos del archivo PRJ son los siguientes:
GEOGCS["GCS_North_American_1983",
DATUM["D_North_American_1983",
SPHEROID["GRS_1980",6378137.0,298.257222101]],
PRIMEM["Greenwich",0.0],
UNIT["Degree",0.0174532925199433]]
¿Con qué SRID se correlaciona esto? Y, en términos más generales, ¿cómo puedo buscar el SRID según la información que se encuentra en el archivo PRJ? ¿Hay alguna tabla de búsqueda en alguna parte que liste todos los SRID y sus equivalentes de ''geogcs''?
Como referencia, aquí hay una imagen de algunos de los datos importados usando srid=4269
(también probé 4326 y obtuve exactamente los mismos resultados):
imagen http://img245.imageshack.us/img245/2545/4326sand.png
El amarillo es mi información importada del SHP, y el fondo es de openlayers (del administrador de geodjango). ¿Esto significa que estoy usando el SRID incorrecto, o es este el margen de error esperado?
El archivo shp es de here
Los datos parecen ser NAD83, que tiene un SRID de 4269. Su base de datos PostGIS tiene una tabla spatial_ref_sys
que es la tabla de búsqueda de SRID.
Si los datos tienen el mismo aspecto con un SRID de 4269 (NAD83) y 4326 (WGS84), entonces hay algo mal.
Para elaborar sobre la respuesta de la synecdoche , el SRID a veces se llama un código "EPSG". El código SRID / EPSG es de hecho una mano corta para las representaciones de proyecciones de texto bien conocido.
Puede hacer una búsqueda rápida en la tabla SRID para ver si puede encontrar una coincidencia exacta o similar:
SELECT srid, srtext, proj4text FROM spatial_ref_sys WHERE srtext ILIKE ''%BLAH%''
Arriba se encontró en http://www.bostongis.com/?content_name=postgis_tut01 .
También puede buscar en spatialreference.org para este tipo de cosas. La herramienta de búsqueda es primitiva, por lo que es posible que deba utilizar una búsqueda en Google y especificar el sitio, pero cualquier resultado le mostrará los contenidos de ESRI PRJ, PostGIS SQL INSERT y muchas otras representaciones.
Creo que su PRJ está en: http://spatialreference.org/ref/sr-org/15/
Utilice el módulo OSD Python de GDAL para determinar el código:
from osgeo import osr
srsWkt = ''''''GEOGCS["GCS_North_American_1983",
DATUM["D_North_American_1983",
SPHEROID["GRS_1980",6378137.0,298.257222101]],
PRIMEM["Greenwich",0.0],
UNIT["Degree",0.0174532925199433]]''''''
# Load in the projection WKT
sr = osr.SpatialReference(srsWkt)
# Try to determine the EPSG/SRID code
res = sr.AutoIdentifyEPSG()
if res == 0: # success
print(''SRID='' + sr.GetAuthorityCode(None))
# SRID=4269
else:
print(''Could not determine SRID'')
Vaya y descargue las utilidades de GDAL , el ogrinfo (que escupiría la información de proyección) y las utilidades de ogr2ogr son invaluables.
James ya dio un enlace a spatialreference.org . Eso ayuda a encontrar información de referencia espacial ... Supongo que cargó spatial_ref_sys.sql
cuando preparó su instancia de Postgis .
Y para ser sincero, no creo que el problema esté en el lado PostGIS de las cosas.
Normalmente guardo mis datos en diferentes SRID en mis dbs PostGIS. Sin embargo, siempre necesito proyectar al SRS de salida . Está mostrando mosaicos pretratados de OpenStreetMap, y apuesto a que fueron dibujados usando SRID 900913 ( la proyección de mercator modificado del Mapa de Google que ahora todos usan para renderizar ).
Mi recomendación para ti es:
1- Establece la proyección correcta en el código OpenLayers que coincida con las fichas de las que estás leyendo.
2.- Mantenga los datos en la base de datos en cualquier SRID que desee (siempre que sea correcto, por supuesto).
3.- Asegúrese de que el servidor que está utilizando para generar las imágenes de sus datos (ArcGIS Server, Mapserver, GeoServer o lo que sea) esté reproyectando a ese mismo SRS.
Todo coincidirá.
Aclamaciones
Prj2EPSG es un sitio web pequeño destinado exactamente a este problema; pegue los contenidos de PRJ y hace todo lo posible para encontrar un EPSG coincidente. También tienen una API de servicio web . No es una ciencia exacta. Parecen usar Lucene y la base de datos EPSG para buscar texto en busca de coincidencias.