OGR, Python, S57

Ответить
Andrey Zhukov
Гуру
Сообщения: 838
Зарегистрирован: 10 дек 2009, 23:24
Репутация: 169
Ваше звание: старик-гисовик
Откуда: Москва
Контактная информация:

OGR, Python, S57

Сообщение Andrey Zhukov » 16 июл 2015, 14:48

Пытаюсь через Python работать с S57.
Проблема: атрибуты NOBJNM и NINFOM вытаскиваются до первого пробела. SeeMeENC и Панорама читают без проблем.
При открытии файлов в QGIS встречается все та же проблема. Пробовал QGIS 2.8, 2.10 и NextGIS QGIS 15.3.

Возможно, помогли бы Control Options (http://www.gdal.org/drv_s57.html), но как их вписывать в Питон, я ума не приложу.
Последний раз редактировалось Andrey Zhukov 16 июл 2015, 16:12, всего редактировалось 1 раз.

Александр Мурый
Гуру
Сообщения: 5173
Зарегистрирован: 26 сен 2009, 16:26
Статьи: 3
Проекты: 5/1
Репутация: 787
Ваше звание: званий не имею
Откуда: Москва

Re: OGR, Python, S57

Сообщение Александр Мурый » 16 июл 2015, 14:56

Andrey Zhukov писал(а):Возможно, помогли бы Control Options (http://www.gdal.org/drv_s57.html), но как их вписывать в Питон, я ума не приложу.
Из офиц. туториала насчёт "Control Options":

Код: Выделить всё

src_ds = gdal.Open( src_filename )
dst_ds = driver.CreateCopy( dst_filename, src_ds, 0, 
                [ 'TILED=YES', 'COMPRESS=PACKBITS' ] )
Редактор материалов, модератор форума

Andrey Zhukov
Гуру
Сообщения: 838
Зарегистрирован: 10 дек 2009, 23:24
Репутация: 169
Ваше звание: старик-гисовик
Откуда: Москва
Контактная информация:

Re: OGR, Python, S57

Сообщение Andrey Zhukov » 16 июл 2015, 15:01

Вопрос про ogr, а не про gdal :)

Александр Мурый
Гуру
Сообщения: 5173
Зарегистрирован: 26 сен 2009, 16:26
Статьи: 3
Проекты: 5/1
Репутация: 787
Ваше звание: званий не имею
Откуда: Москва

Re: OGR, Python, S57

Сообщение Александр Мурый » 16 июл 2015, 15:20

Andrey Zhukov писал(а):Вопрос про ogr, а не про gdal :)
Извиняйте. Ну тогда можно пробовать методы CreateDataSource или CopyDataSource с параметром "papszOptions".
Цитирую доки:
papszOptions: a StringList of name=value options. Options are driver
specific, and driver information can be found at the following
url:http://www.gdal.org/ogr/ogr_formats.html
Редактор материалов, модератор форума

Andrey Zhukov
Гуру
Сообщения: 838
Зарегистрирован: 10 дек 2009, 23:24
Репутация: 169
Ваше звание: старик-гисовик
Откуда: Москва
Контактная информация:

Re: OGR, Python, S57

Сообщение Andrey Zhukov » 16 июл 2015, 15:38

papszOptions - это ж для сишного кода...

А в питоне CopyDataSource никаких параметров и не подразумевает. Тем более, мне же открыть надо с параметрами, а не сохранить.

Andrey Zhukov
Гуру
Сообщения: 838
Зарегистрирован: 10 дек 2009, 23:24
Репутация: 169
Ваше звание: старик-гисовик
Откуда: Москва
Контактная информация:

Re: OGR, Python, S57

Сообщение Andrey Zhukov » 16 июл 2015, 16:11

Победил!

Все-таки ogr управляется через gdal.
Данные нормально стали отдаваться с опцией RECODE_BY_DSSI=ON.
Параметр скармливается так:

Код: Выделить всё

gdal.SetConfigOption('OGR_S57_OPTIONS', 'RECODE_BY_DSSI=ON')

Ответить

Вернуться в «GDAL/OGR»

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и 29 гостей