J'ai généré JSON à partir d'ArcGIS que je souhaite convertir en GeoJSON dans EPSG 4326. Cela échoue:
$ ogr2ogr -f GeoJSON -t_srs EPSG:4326 out.geo.json in.arcgis.json OGRGeoJSON
ERROR 6: EPSG PCS/GCS code 102100 not found in EPSG support files. Is this a valid
EPSG coordinate system?
J'ai trouvé un message sur le forum qui dit que 102100 peut être changé en 3857, ce qui est mathématiquement identique. Donc, cela fonctionne, avec le même message d'erreur:
$ ogr2ogr -f GeoJSON -s_srs EPSG:3857 -t_srs EPSG:4326 out.geo.json in.arcgis.json OGRGeoJSON
ERROR 6: EPSG PCS/GCS code 102100 not found in EPSG support files. Is this a valid
EPSG coordinate system?
Cependant, j'ai plusieurs fichiers dans le système de projection 102100. J'aimerais enseigner à ogr2ogr la projection 102100, afin que je puisse scripter la conversion. Existe-t-il un moyen de mettre à jour la configuration afin que 102100 soit reconnu et traité de la même manière que 3857?
Mise à jour - Ces données proviennent de l'API REST d'ArgGIS Server 9.3.1. Si je ne spécifie pas de référence spatiale de sortie, j'obtiens 102100, qu'ils définissent comme le système de coordonnées projeté "WGS_1984_Web_Mercator_Auxiliary_Sphere" . Un moyen beaucoup plus simple d'atteindre mon objectif est de demander la projection souhaitée, avec le outSR=4326
paramètre de requête. La question est toujours valable si vous n'avez pas accès aux données originales.
la source
$GDAL_DATA$
répertoire est à/usr/local/share/gdal
et EPSG 3857 est définipcs.csv
dans ce dossier. J'ai copié cette ligne danspcs.override.csv
et changé l'ID (première colonne) de 3857 à 102100. À ce stade, les conversions ont fonctionné sans l'-s_srs
indicateur. La solution à plus long terme consistait à obtenir mes données source dans une projection connue, afin que je puisse utiliser ogr2ogr uniquement pour la conversion de format, plutôt que de mélanger les projections.