Как использовать параметр -f в утилите gdal_contour?
- nextstopsun
- Участник
- Сообщения: 82
- Зарегистрирован: 04 май 2010, 17:12
- Репутация: 50
- Откуда: Москва
Как использовать параметр -f в утилите gdal_contour?
По умолчанию на выходе утилита выдает шейпфайл.
Но в описании присутствует параметр -f, который вроде бы позволяет задать выходной формат.
Примеров с этим параметром, к сожалению, нигде не нашел.
Мне нужно результат писать в базу postgresql (postgis).
Что нужно указывать в этом параметре, чтобы результат ушел сразу в базу, а не в шейп?
Но в описании присутствует параметр -f, который вроде бы позволяет задать выходной формат.
Примеров с этим параметром, к сожалению, нигде не нашел.
Мне нужно результат писать в базу postgresql (postgis).
Что нужно указывать в этом параметре, чтобы результат ушел сразу в базу, а не в шейп?
-
- Гуру
- Сообщения: 2627
- Зарегистрирован: 29 мар 2007, 14:12
- Репутация: 34
- Откуда: Ukraine
- nextstopsun
- Участник
- Сообщения: 82
- Зарегистрирован: 04 май 2010, 17:12
- Репутация: 50
- Откуда: Москва
Re: Как использовать параметр -f в утилите gdal_contour?
Статья, конечно, полезная. Как и дока gdal собс-но.
Только вот при задании параметра -f как например в ogr2ogr
gdal_contour -i 1 -f PostgreSQL PG:"host=localhost user=iampg password=iampgpass dbname=iamgis" iamrast.tif
Получаю такую ошибку
ERROR 1: Error browsing database for PostGIS Raster tables:
И что-то мне подсказывает, что это параметр для входного формата, а не выходного.
Но в доке сказано output:
-f format:
create output in a particular format, default is shapefiles.
Только вот при задании параметра -f как например в ogr2ogr
gdal_contour -i 1 -f PostgreSQL PG:"host=localhost user=iampg password=iampgpass dbname=iamgis" iamrast.tif
Получаю такую ошибку
ERROR 1: Error browsing database for PostGIS Raster tables:
И что-то мне подсказывает, что это параметр для входного формата, а не выходного.
Но в доке сказано output:
-f format:
create output in a particular format, default is shapefiles.
-
- Гуру
- Сообщения: 2627
- Зарегистрирован: 29 мар 2007, 14:12
- Репутация: 34
- Откуда: Ukraine
Re: Как использовать параметр -f в утилите gdal_contour?
Нескромный вопрос. А вы уверены, что gdal сейчас умеет писать растровые данные в в PostGIS? А то разработчики об этом похоже не знаютnextstopsun писал(а):Получаю такую ошибку
ERROR 1: Error browsing database for PostGIS Raster tables:

Неправильно подсказывает. В документации, конечно, бывают ошибки, но в данном случае все правильноnextstopsun писал(а):И что-то мне подсказывает, что это параметр для входного формата, а не выходного.
-f format:
create output in a particular format, default is shapefiles.
- nextstopsun
- Участник
- Сообщения: 82
- Зарегистрирован: 04 май 2010, 17:12
- Репутация: 50
- Откуда: Москва
Re: Как использовать параметр -f в утилите gdal_contour?
Утилита gdal_contour на вход принимает растровые данные, а на выходе возвращает векторные.
Как я написал, на вход я ей подаю растровый файл iamrast.tif
На выходе получаю по умолчанию шейпфайл, а хочу получить таблицу в базе данных.
"Нескромный вопрос. А вы уверены, что gdal сейчас умеет писать растровые данные в в PostGIS? А то разработчики об этом похоже не знают ."
Вопрос, конечно, к теме не относится (писать-то мне нужно векторные данные), но я в этом не уверен. Хотя может быть кто-то уже сделал патч...))
Как я написал, на вход я ей подаю растровый файл iamrast.tif
На выходе получаю по умолчанию шейпфайл, а хочу получить таблицу в базе данных.
"Нескромный вопрос. А вы уверены, что gdal сейчас умеет писать растровые данные в в PostGIS? А то разработчики об этом похоже не знают ."
Вопрос, конечно, к теме не относится (писать-то мне нужно векторные данные), но я в этом не уверен. Хотя может быть кто-то уже сделал патч...))
-
- Гуру
- Сообщения: 2627
- Зарегистрирован: 29 мар 2007, 14:12
- Репутация: 34
- Откуда: Ukraine
Re: Как использовать параметр -f в утилите gdal_contour?
Я в курсеnextstopsun писал(а):Утилита gdal_contour на вход принимает растровые данные, а на выходе возвращает векторные.

Код: Выделить всё
gdal_contour -i 1 -f PostgreSQL PG:"host=localhost user=iampg password=iampgpass dbname=iamgis" iamrast.tif -nln contour_out
- nextstopsun
- Участник
- Сообщения: 82
- Зарегистрирован: 04 май 2010, 17:12
- Репутация: 50
- Откуда: Москва
Re: Как использовать параметр -f в утилите gdal_contour?
Указываю -nln contour_out и все равно получаю ту же ошибку.
В доке GDAL вроде бы этот параметр не обязателен.
Код: Выделить всё
gdal_contour -i 1 -f PostgreSQL PG:"host=localhost user=iampg password=iampgpass dbname=iamgis" iamrast.tif -nln contour_out
ERROR 1: Error browsing database for PostGIS Raster tables:
-nln outlayername:
Provide a name for the output vector layer. Defaults to "contour".
-
- Гуру
- Сообщения: 5173
- Зарегистрирован: 26 сен 2009, 16:26
- Репутация: 792
- Ваше звание: званий не имею
- Откуда: Москва
Re: Как использовать параметр -f в утилите gdal_contour?
А может таки стоит указывать вначале входной файл, а потом выходной? 
И заодно стоит, наверное, указывать имя таблицы (флаг "-a").

Код: Выделить всё
gdal_contour -f PostgreSQL iamrast.tif PG:host=localhost user=iampg password=iampgpass dbname=iamgis -i 1
Редактор материалов, модератор форума
- nextstopsun
- Участник
- Сообщения: 82
- Зарегистрирован: 04 май 2010, 17:12
- Репутация: 50
- Откуда: Москва
Re: Как использовать параметр -f в утилите gdal_contour?
Вот что указано в описании утилиты:И заодно стоит, наверное, указывать имя таблицы (флаг "-a").
Код: Выделить всё
Usage: gdal_contour [-b <band>] [-a <attribute_name>] [-3d] [-inodata]
[-snodata n] [-f <formatname>] [-i <interval>]
[-off <offset>] [-fl <level> <level>...]
[-nln <outlayername>] [-q]
<src_filename> <dst_filename>
Опять же из описания утилиты параметр -nln задается до указания входного файла <src_filename>А может таки стоит указывать вначале входной файл, а потом выходной?
Повторюсь: на выходе мне нужен не файл, а таблица базы данных.
Вобщем я пытался менять местами параметры - ошибка от этого остается прежней.
Прошу прощения - готов перефразировать вопрос:
Приведите, пожалуйста, рабочий пример вызова утилиты gdal_contour с выходным форматом PostgreSQL
- nextstopsun
- Участник
- Сообщения: 82
- Зарегистрирован: 04 май 2010, 17:12
- Репутация: 50
- Откуда: Москва
Re: Как использовать параметр -f в утилите gdal_contour?
Решил.
Код такой:
Код такой:
Код: Выделить всё
gdal_contour -f PostgreSQL -i 1 -nln cont iamrast.tif "PG:host=localhost user=iampg password=iampgpass dbname=iamgis"
- Максим Дубинин
- MindingMyOwnBusiness
- Сообщения: 9129
- Зарегистрирован: 06 окт 2003, 20:20
- Репутация: 748
- Ваше звание: NextGIS
- Откуда: Москва
- Контактная информация:
Re: Как использовать параметр -f в утилите gdal_contour?
пристегивайтесь, турбулентность прямо по курсу
Кто сейчас на конференции
Сейчас этот форум просматривают: нет зарегистрированных пользователей и 1 гость