4 votos

¿Por qué isn ' t QGIS detección de CRS de archivo .prj?

Tengo un número de 1 km hexagonal rejillas que cubren varios condados en los Estados unidos en un postgreSQL/postGIS base de datos. Cada cuadrícula tiene la CRS EPSG:3857, y los condados de la capa ha EPSG:3857. Cuando la visualización de las rejillas con los condados en QGIS, todo parece magnífico.

Pero ... con el fin de compartir estas redes con colegas, he tenido que exportar a archivos de forma a partir ogr2ogr. La visualización de estos en QGIS, cada cuadrícula se ve empujado hasta unos 20 km o así, y QGIS establece automáticamente la CRS a EPSG:3395 (que no es el proyecto CRS).

Cuando exporto el postGIS tablas como shapefiles de QGIS, el .prj archivo es exactamente el mismo que el ogr2ogr exportado shapefiles, pero el postGIS exportar tablas se muestran correctamente. Me di cuenta de que QGIS crea una .qpj archivo al exportar archivos de forma de QGIS, así que he llegado a la conclusión de que QGIS está ignorando el .prj y en busca de una .qpj lugar. ¿Por qué no puedo leer el .prj sin .qpj? Otros archivos (como los del Censo de los estados unidos) no tienen una .qpj pero QGIS los muestra correctamente.

Yo he venido para arriba con una solución de ahorro de un valor predeterminado.qpj y la creación de una nueva .qpj de este para cada archivo que exportar con ogr2ogr, pero esto parece desordenado y, obviamente, no reproducible, ya que sólo funciona para EPSG:3857.

Nota al margen: estoy usando QGIS 2.0.1.

EDITAR:

Aquí está el ogr2ogr comando que he usado:

ogr2ogr -f "ESRI Shapefile" /home/matt/data/hex_grid_1 PG:'dbname=mydb user=matt' hex_grid_1

El contenido de el .prj:

PROJCS["WGS_84_Pseudo_Mercator",GEOGCS["GCS_WGS_1984",DATUM["D_WGS_1984",SPHEROID["WGS_1984",6378137,298.257223563]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Mercator"],PARAMETER["central_meridian",0],PARAMETER["false_easting",0],PARAMETER["false_northing",0],UNIT["Meter",1],PARAMETER["standard_parallel_1",0.0]]

El contenido de el .qpj:

PROJCS["WGS 84 / Pseudo-Mercator",GEOGCS["WGS 84",DATO["WGS_1984",ESFEROIDE["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"]],PROJECTION["Mercator_1SP"],PARAMETER["central_meridian",0],PARAMETER["scale_factor",1],PARAMETER["false_easting",0],PARAMETER["false_northing",0],UNIT["metre",1,AUTHORITY["EPSG","9001"]],AXIS["X",EAST],AXIS["Y",NORTH],EXTENSION["PROJ4","+proj=merc +a=6378137 +b=6378137 +lat_ts=0.0 +lon_0=0.0 +x_0=0.0 +y_0=0 +k=1.0 +unidades=m +nadgrids=@null +wktext +no_defs"],la AUTORIDAD["EPSG","3857"]]

EDITAR:

El problema fue resuelto mediante la conversión de la EPSG:3857 a EPSG:2163 en todos mis scripts. Todavía no estoy seguro de cuál es el problema a pesar de que desde las redes se muestran correctamente en QGIS cuando originalmente cargada de una tabla de postgreSQL (con EPSG:3857).

Mi solución demostrado crudo como yo creía que sí, ya que mi colega era incapaz de usar el archivo en ArcGIS, que no lea el .prj o el .qpj correctamente.

1voto

SpliFF Puntos 214

El EPSG:3857 definición es un sucio truco para obtener la proyección de que Google inventó en los modernos programas de SIG. Es una combinación de esfera y ellispoid que no es utilizado por "normal" de las proyecciones. Desafortunadamente, cada software utiliza otra forma de adaptación.

QGIS utiliza el .qpj archivo, ARCGIS el WKT en el .prj archivo y GDAL el proj.4 definición. El .qpj archivo incorpora el proj.4 definición en el WKT definición.

La mejor manera de lidiar con estos problemas es evitar que Google Mercator. Usted puede utilizar mejor su Estado local Avión, UTM o algunos todo el continente Lambert o Albers proyecciones.

i-Ciencias.com

I-Ciencias es una comunidad de estudiantes y amantes de la ciencia en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by: