Чтение S-57. С чего начать?
-
- Новоприбывший
- Сообщения: 6
- Зарегистрирован: 13 дек 2011, 08:20
- Репутация: 0
Чтение S-57. С чего начать?
Здравствуйте! Нужно написать программу чтения и отображения навигационных карт формата S-57 так, как это делает, например, OpenCPN или SeeMyENC из SevenCS, но не так, как это делает QGis. Еще нашел программу GHelm , которая вроде читает карты с помощью iso8211lib, но судя по скриншотам отображает их совсем не в соответствии со стандартом и явно не всё. Прочел эту статью - и вконец запутался. Подскажите, для начала, есть ли вообще свободные библиотеки, корректно читающие S-57? Какие? И нужно ли мне изучить стандарт S-57 для решения моей задачи или можно это пропустить как задачу низкого уровня и изучать что-то более высокоуровневое? Спасибо.
-
- Гуру
- Сообщения: 2627
- Зарегистрирован: 29 мар 2007, 14:12
- Репутация: 34
- Откуда: Ukraine
Re: Чтение S-57. С чего начать?
Для начала: чем GDAL не устраивает?
-
- Новоприбывший
- Сообщения: 6
- Зарегистрирован: 13 дек 2011, 08:20
- Репутация: 0
Re: Чтение S-57. С чего начать?
GDAL- то есть OGR? QGis, который, как я понимаю, работает с использованием этих библиотек, отображает карты некорректно. В чем тут проблема, в QGis или в OGR? Если в QGis - то спасибо за подсказку)
-
- Гуру
- Сообщения: 2627
- Зарегистрирован: 29 мар 2007, 14:12
- Репутация: 34
- Откуда: Ukraine
Re: Чтение S-57. С чего начать?
Есть ли проблема сразу сказать не могу. Возможно, ее вообще нет, просто нужны дополнительные действия по настройке отображения.
В чем именно проявляется некорректность отображения в QGIS? Желательно с примером файла и примером корректного отображения в другом ПО.
В чем именно проявляется некорректность отображения в QGIS? Желательно с примером файла и примером корректного отображения в другом ПО.
-
- Новоприбывший
- Сообщения: 6
- Зарегистрирован: 13 дек 2011, 08:20
- Репутация: 0
Re: Чтение S-57. С чего начать?
В прикрепленном архиве сама карта s-57, скриншот ее отображения в программе SeeMyENC(правильное отображение), и скриншот в QGis. Тут почему-то запрещено выкладывать карты S-57... ?
- Вложения
-
- maps.zip
- (146.75 КБ) 1065 скачиваний
-
- Новоприбывший
- Сообщения: 6
- Зарегистрирован: 13 дек 2011, 08:20
- Репутация: 0
Re: Чтение S-57. С чего начать?
OGR вроде подходит для парсинга файла.
-
- Гуру
- Сообщения: 3321
- Зарегистрирован: 27 июл 2009, 19:26
- Репутация: 748
- Ваше звание: Вредитель полей
Re: Чтение S-57. С чего начать?
Для парсинга геометрии дофига чего подходит, а вот символика там довольно сложная, при том стандартизированная. Вот её и нет в кугисе. И не уверен, что всё можно решить одной только символикой.
-
- Гуру
- Сообщения: 2627
- Зарегистрирован: 29 мар 2007, 14:12
- Репутация: 34
- Откуда: Ukraine
Re: Чтение S-57. С чего начать?
Посмотрел. Похоже, дело только в символике, все имеющиеся слои определяются, насколько могу судить, правильно. ИМХО, такой подход имеет свои плюсы. Если символика действительно стандартизирована и едина для всех файлов этого формата (в чем я сомневаюсь) можно сделать набор символов для QGIS и она тоже будет открывать файлы так же
-
- Гуру
- Сообщения: 3321
- Зарегистрирован: 27 июл 2009, 19:26
- Репутация: 748
- Ваше звание: Вредитель полей
Re: Чтение S-57. С чего начать?
Все как раз стандартизировано.
http://www.iho.int/iho_pubs/IHO_Download.htm
символы описаны в S-4 "REGULATIONS OF THE IHO FOR INTERNATIONAL (INT) CHARTS AND CHART SPECIFICATIONS OF THE IHO" (аналогичные данные, но в чуть более простой форме, изложены вот тут http://www.nauticalcharts.noaa.gov/mcd/chartno1.htm )
Кое-что может быть в документах S-52 и собственно S-57.
Некая трактовка стандартов может быть, возможно, только в выборе конкретных RGB значений для цветов. Но даже они где-то есть.
Добавлю (это, по-моему, важно): тестовые датасеты лежат тут http://www.iho.int/iho_pubs/standard/S- ... _intro.htm вместе с референсными pdf (по ссылке внизу).
http://www.iho.int/iho_pubs/IHO_Download.htm
символы описаны в S-4 "REGULATIONS OF THE IHO FOR INTERNATIONAL (INT) CHARTS AND CHART SPECIFICATIONS OF THE IHO" (аналогичные данные, но в чуть более простой форме, изложены вот тут http://www.nauticalcharts.noaa.gov/mcd/chartno1.htm )
Кое-что может быть в документах S-52 и собственно S-57.
Некая трактовка стандартов может быть, возможно, только в выборе конкретных RGB значений для цветов. Но даже они где-то есть.
Добавлю (это, по-моему, важно): тестовые датасеты лежат тут http://www.iho.int/iho_pubs/standard/S- ... _intro.htm вместе с референсными pdf (по ссылке внизу).
-
- Активный участник
- Сообщения: 178
- Зарегистрирован: 16 июл 2008, 09:56
- Репутация: 1
- Откуда: Москва
Re: Чтение S-57. С чего начать?
А сам OpenCPN не пробовали использовать?Vitaly1988 писал(а):Здравствуйте! Нужно написать программу чтения и отображения навигационных карт формата S-57 так, как это делает, например, OpenCPN или SeeMyENC из SevenCS, но не так, как это делает QGis.
-
- Новоприбывший
- Сообщения: 6
- Зарегистрирован: 13 дек 2011, 08:20
- Репутация: 0
Re: Чтение S-57. С чего начать?
Легче не стало, скорее наоборот. Зато теперь знаю, куда копать - за это спасибо.ericsson писал(а):Все как раз стандартизировано.
OpenCPN - это программа с открытым кодом, не библиотека. А я не настолько высококлассный программист(только начинающий изучать С++), чтобы разобраться в его исходниках и перенести нужное в свою программу. Хотя, сейчас посмотрел, там тоже GDAL/OGR используют. Исходники, конечно, пригодятся, но свое приложение мне легче писать с нуля. )Konstantin Tokar писал(а): А сам OpenCPN не пробовали использовать?
-
- Гуру
- Сообщения: 3321
- Зарегистрирован: 27 июл 2009, 19:26
- Репутация: 748
- Ваше звание: Вредитель полей
Re: Чтение S-57. С чего начать?
Собственно, прочесть структуры формата - не проблема.
Проблема - показать все это, при том сделать это правильно. А то получится, действительно, как в кугисе в нынешнем виде. Там один знак "маяк" чего стоит.
Проблема - показать все это, при том сделать это правильно. А то получится, действительно, как в кугисе в нынешнем виде. Там один знак "маяк" чего стоит.
-
- Новоприбывший
- Сообщения: 6
- Зарегистрирован: 13 дек 2011, 08:20
- Репутация: 0
Re: Чтение S-57. С чего начать?
Показать получилось с использованием библиотеки libS52 из пакета OpenEV. Эту же библиотеку, но с некоторыми изменениями, использовали в OpenCPN.
-
- Новоприбывший
- Сообщения: 1
- Зарегистрирован: 14 авг 2014, 12:52
- Репутация: 0
Re: Чтение S-57. С чего начать?
Добрый день.
Мне тоже надо сделать приложение отображающие карты формата S-57, если я правильно понял то для чтения S-57 вы использовали OGR, а для отображения libS52?
Мне тоже надо сделать приложение отображающие карты формата S-57, если я правильно понял то для чтения S-57 вы использовали OGR, а для отображения libS52?
Кто сейчас на конференции
Сейчас этот форум просматривают: нет зарегистрированных пользователей и 16 гостей