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.