Как установить переменную среды GDAL DATA, чтобы она указывала на каталог, содержащий файлы EPSG csv?



Я хочу обернуть (перепроектировать) одну переменную в этом файле netcdf.



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


Но я получаю эту ошибку:




Ошибка 4: не удается открыть файл поддержки EPSG gcs.csv. Попробуйте установить переменную среды GDAL_DATA так, чтобы она указывала на каталог, содержащий файлы EPSG csv.



Ошибка 1: Ошибка перевода исходного или целевого SRS: EPSG: 4326




Я использую GDAL 1.9.0, выпущенный 2011/12/29. Я буду благодарен за любую помощь.

500   5  

5 ответов:

Вы можете редактировать переменные окружения графически в Windows (например, this , илиthis ).

Добавьте системную переменную с именем GDAL_DATA и значением пути к общим данным GDAL (папка с несколькими файлами, например coordinate_axis.csv, gcs.csv, pcs.csv, и другие файлы).

Чтобы сделать переменную окружения эффективной, вам нужно запустить cmd.exe, или выйти из системы, или другой метод.

См. также: http://trac.osgeo.org/gdal/wiki/FAQInstallationAndBuilding#HowtosetGDAL_DATAvariable

Можно также использовать параметр --config:

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

См.: http://trac.osgeo.org/gdal/wiki/ConfigOptions

Для получения информации о параметрах конфигурации.

Я попытался программно установить переменную GDAL_DATA (C#), и решение @turgay не сработало для меня. здесь я нашел рабочий путь:

OSGeo.GDAL.Gdal.SetConfigOption("GDAL_DATA", path+@"\gdal\data");

Можно также использовать для создания программно (с помощью C# API). Пример кода:

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);
}

В командной строке я обычно устанавливал путь GDAL_DATA, указывая, где (и какие данные gdal) использовать:

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

Я научился этому у http://clhenrick.github.io/thesis-blog/procrastination/portfolio-work/2014/09/27/procrastinating/ мне всегда нужно было сделать это, хотя я уже настроил его в переменных окружения. Моя проблема, казалось, была проблемой установки, но я не хотел переустановите что-нибудь...пока.

В качестве временного решения, в то время как у меня не было времени для более постоянного, я удалил существующий путь GDAL_DATA в переменных окружения, выключил компьютер, включил его, создал новый, выключил компьютер, снова включил его. Исправлено!

Полное выключение не перезапуск из-за причудливого поведения моей системы.

Comments

    Ничего не найдено.