Comment définir la variable D'environnement GDAL DATA pour pointer vers le répertoire contenant les fichiers csv D'EPSG?

je veux envelopper(re-projeter) une variable dans ce fichier netcdf.

D: gdalwarp -t_srs EPSG:4326 NETCDF:"C:fie.nc":var "C:DesktopSM.img"

mais je reçois cette erreur:

ERREUR 4: Impossible d'ouvrir EPSG fichier de prise en charge gcs.csv. Essayez de définir la variable d'environnement GDAL_DATA pour pointer vers le répertoire contenant les fichiers csv D'EPSG.

ERROR 1: Translating source or target SRS failed: EPSG: 4326

j'utilise GDAL 1.9.0, released 2011/12/29. Je serai reconnaissant pour toute aide.

20
demandé sur sacvf 2013-01-21 21:43:23

5 réponses

vous pouvez modifier graphiquement les variables d'environnement dans Windows (par exemple, ce , ou ce ).

ajouter une variable système avec le nom GDAL_DATA et la valeur du chemin vers les données partagées GDAL (un dossier avec plusieurs fichiers, comme coordinate_axis.csv , gcs.csv , pcs.csv , et d'autres fichiers).

pour rendre la variable d'environnement efficace, vous devez exécuter cmd.exe , ou log-out, ou autre méthode.

Voir aussi: http://trac.osgeo.org/gdal/wiki/FAQInstallationAndBuilding#HowtosetGDAL_DATAvariable

23
répondu Mike T 2018-07-30 02:18:09

vous pouvez également utiliser le --config switch:

D:\ gdalwarp --config GDAL_DATA "D:/my/gdal/data" -t_srs EPSG:4326 NETCDF:"path":Soil_Moisture "C:\Desktop\SM.img"

voir: http://trac.osgeo.org/gdal/wiki/ConfigOptions

pour des informations sur les options de configuration.

8
répondu sacvf 2015-06-18 10:52:42

j'ai essayé de configurer la variable GDAL_DATA de façon programmatique(C#) et la solution de @turgay n'a pas fonctionné pour moi. ici j'ai trouvé le moyen de travailler:

OSGeo.GDAL.Gdal.SetConfigOption("GDAL_DATA", path+@"\gdal\data");
3
répondu null.point3r 2016-02-22 19:06:30

vous pouvez également utiliser pour faire programmatically(avec C# API). Code échantillon:

string path = @"C:\abc\";
_SetValueNewVariable("GDAL_DATA", path + "\data");
_SetValueNewVariable("GEOTIFF_CSV", path + "\data");
_SetValueNewVariable("GDAL_DRIVER_PATH", path + "\gdalplugins");

private static void _SetValueNewVariable(string sVar, string sValue)
{
    if (System.Environment.GetEnvironmentVariable(sVar) == null)
       System.Environment.SetEnvironmentVariable(sVar, sValue);
}
2
répondu turgay 2014-05-29 08:53:54

sur l'invite de commande, j'avais l'habitude de définir le chemin GDAL_DATA en pointant vers où (et quelles données gdal) utiliser:

set GDAL_DATA=C:\Program Files\PostgreSQL\9.3\gdal-data

Je l'ai appris de http://clhenrick.github.io/thesis-blog/procrastination/portfolio-work/2014/09/27/procrastinating / j'ai toujours eu besoin de faire ce qui précède même si je l'ai déjà mis en place dans mes variables d'environnement. Mon le problème semblait être un problème d'installation mais je ne voulais pas réinstaller quoi que ce soit...encore.

Comme une solution temporaire, alors que je n'ai pas le temps pour une base plus permanente, j'ai supprimé l'existant GDAL_DATA chemin dans mes variables d'environnement, l'arrêt de l'ordinateur est activée, elle créé un nouveau, arrêtez l'ordinateur, de l'allumer de nouveau. FIXE!

arrêt complet non redémarré en raison du comportement bizarre de mon système.

0
répondu curiousCat 2015-01-03 10:50:49