Думаю, многие сталкивались с подобной ситуацией. Хотелось бы найти наименее трудозатратный способ.
Есть постановление правительства области о создании особо охраняемой природной территории. В этом постановлении указаны границы территории в виде большой таблицы с GPS-координатами поворотных точек. Как это проще всего перенести в OSM? Что делал я:
в GoogleEarth вставлял координаты каждой точки в поиск и ставил метку;
экспортировал метки в kml;
kml конвертировал в gpx;
импортировал gpx в JOSM и вручную отрисовывал полигон по точкам.
Но меня мучают смутные сомнения, что это не самый оптимальный способ решения задачи. Кто как с этим справляется?
Самый универсальный это написать скрип конвертации из исходных данных в нужный формат osm/gpx/poly.
В QGIS открыть это как данные если там csv с координатами и сохранить в shape.
В блокноте с помощью поиска и замены превратить исходные данные в формат poly.
Но уж точно не заниматься копипастом каждой точки.
Кстати что за правительство даёт координаты в WGS84?
JOSM умеет создавать геометрию по заданным координатам. Нужен установленный плагин UtilsPlugin2 и «Ещё инструменты — > Создать по координатам» (или Ctrl+Shift+L). Самый простой способ для нескриптописателей.
Не надо вручную, там есть “Convert to data layer” в свойствах слоя.
А что касается первой части, то, раз координаты уже в WGS84, то проще всего прямо в текстовом редакторе и сделать gpx из списка точек - он достаточно примитивный формат.
В JOSM есть “Инструмент|Добавить точку” Shift-D.
Так что ручками с постановлений можно набивать прямо там.
Останется только извечный вопрос: “А что у вас по осям, товарищ?” То есть, какая именно система координат в постановлении? Точно нужная и без непонятных сдвигов?
В частности он умеет открывать шэйпы, kml, csv и прочие форматы
Для простоты можно воспользоваться форматом csv - набиваете файл в текстовом редакторе, по точке на строку, в первой строке указываете заголовки столбцов. Чтобы подхватились координаты - соответствующие столбцы надо обозвать как latitude и longitude, прочие столбцы пойдут как атрибуты точек. Пример:
Для такого объема данных лучше попросить авторов генерить osm xml, если они уже дают нормальные координаты, то и это легко осилят. Это гораздо лучше, чем распечатывать все и им же будет проще.
С помощью автокада. Использовать координаты МСК, т.к. с WGS Автокад не работает.
PDF переводим в word или excel чтобы можно было копировать таблицы скопом. Для этого используем например Abbyy Transformer
Копируем таблицу в эксель, оставляя только номера X и Y и сохраняем текстовый файлик.
Загружаем в автокад утилитку Geoimport и с ее помощью отрисовываем контуры. Она делает это автоматом - нужно только галку поставить.
Остается загрузить полученный контур в JOSM (нужна какая-то утилита со словом dxf в названии) и привязать его по паре wgs координат вручную.
Если это кажется сложным и нет программ, то можем разделить работу - подготовишь экселевские файлы для каждого участка, я переведу их в osm, а ты привяжешь их по WGS координатам.
Есть еще такой сайт http://www.convertcsv.com/csv-to-kml.htm, который может переводить разные форматы. Но в PDF формат координат дан в градусы/минуты/секунды, а не десятичном, т.е. нужно его перевести обратно. Для этого надо несколько формул в Excel наворотить. Дабы этого избежать можно перевести из МСК в WGS и получить данные в правильном формате.
Идеальным был бы вариант плагина для JOSM(или сервис который делает KML из csv/xls) , который импортировав текстовый файл определенного формата, соединит точки по порядку в файле. Получить этот текстовый файл задача легко решаемая.
Может есть конвертер, который KML из точек переведет в KML - с контуром?
Нашел. https://www.gpsbabel.org Программа-конвертер, которая может преобразовать KML, состоящийиз отдельных точек в KML с маршрутом (линией, соединяющей точки).
Таким образом порядок действий будет следующим:
ВАРИАНТ 1. С использованием координат МСК-61.
1.Получение KML файла состоящего из точек.
1.1. Создание текстового файла с разделителем из PDF.
1.2. Перевод координат из МСК в WGS при помощи сервисов (geobridge.ru) или утилит (archaeoSYS)
1.3. Создание CSV файла
1.4. Конвертация CSV-KML (http://www.becsv.com)
2. Конвертирование точечного KML в линейный.
3. Импорт KML в JOSM.
ВАРИАНТ 1. С использованием координат WGS-81.
1.Получение KML файла состоящего из точек.
1.1. Создание текстового файла с разделителем из PDF.
1.2. Перевод координат WGS из формата градусы/минуты/секунды в десятичную форму (делается при помощи нескольких формул в Excel)
1.3. Создание CSV файла
1.4. Конвертация CSV-KML (http://www.becsv.com)
2. Конвертирование точечного KML в линейный.
3. Импорт KML в JOSM.
Всем спасибо за советы! Думаю, эта информация будет полезна не только мне.
Это, действительно, оказался самый оптимальный способ построения полигона. Все координаты WGS-84 копируются к окно плагина, ставится “Closed Way” (создать замкнутую область) и плагин мгновенно создаёт готовый полигон. Единственное, предварительно пришлось поменять формат координат из 47°05’0,294" в N47°05’0,294". В исходном виде плагин координаты не принял.
Да, с помощью плагина получается существенно быстрее, т.к. кроме Excel (для добавления N и E перед координатой) не нужны сторонние программы. Единственным преимуществом использования KML является возможность сохранения номеров точек.