Конвертер OSM -> MP

~[0x02] - это гарминовский/навителовский спецсимвол, чтобы номер дороги в квадратике рисовался

Я делаю либо вручную мапедитом, а вообще имею запасной вариант в виде конфига для мп2мп, который использую в первую очередь для нормального прописывания адресов и возможности присваивания типа объекту исходя из наличия нескольких атрибутов (например, разделения объектов религии на мусульманские и православные ).
Так вот там сделать из полилинии полигон - одна строчка.

alexfrol,
когда имеется замкнутая полилиния - берег озера - нивапрос, действительно одна строчка
когда это берег острова - уже сложнее, но тоже можно.
а что делать, когда это просто линия, утыкающаяся в края карты?

Новая версия конвертера

  • код почти целиком переписан
  • добавлено объединение дорог
  • изменён алгоритм порезки дорог

http://garminmapsearch.com/osm/osm2mp_v050.zip

Дороги объединяются, если: а) конец одной дороги является началом другой, б) у них одинаковое имя, тип и параметры роутинга
Видимо, придётся ещё добавить условие, чтобы угол между ними тупой был, а то сейчас dual carriageway в точке схождения объединяется

Нельзя сделать так, чтобы всё автоматом :slight_smile:
В таком случае, имея полностью соединенную линию, вручную делаем из нее так, чтобы было красиво.
Однозначно, так лучше, чем так как есть, а другого решения нет.

В принципе, имея линию, ее уже можно сделать полигоном, и если некрасиво получится - подправить руками.

дык можно и автоматом сделать, чтобы по береговой линии полигоны морей формировались…
но это можно сделать только вместе с обработкой границ карты
а я всё-таки хочу сначала эти [censored] запреты поворотов сделать, чтобы уж хотя бы роутинг полноценный был

Оу, йееее… ))))

Абсолютно правильно. :slight_smile:

и всё-таки не нравится мне этот вариант…
слишком он “уязвимый” для случайного редактирования
имхо, правильнее было бы просто указывать для дорог направление движения, к которому относится запрет. что-то типа dir_from=1 (направление движения совпадает с порядком нод), dir_to=-1

Добил-таки в общих чертах запреты поворотов :sunglasses:
Осталось только через разделение дорог их протащить, но пока проверять не на чем.
Но в любом случае, рисовать их уже можно :wink:
Описание схемы: http://wiki.openstreetmap.org/index.php/Relations/Turn_Restrictions

Кому интересно, вот тестовая карта: http://rapidshare.com/files/129625553/restr-test.rar

Надо будет попробовать :slight_smile:

Поменял ежедневный скрипт. Теперь отключена компиляция фришным маппером, а гарминовская карта сразу собирается в gmapsupp.img.

Ещё попробовал скомпилить всю Россию одним куском.
Исходник: http://downloads.cloudmade.com/asia/russia
Результат: http://garminmapsearch.com/osm/mp/2008-07-16_000508_russia.rar

Новая версия конвертера: http://garminmapsearch.com/osm/osm2mp_v052.zip

  • настраиваемая склейка дорог
  • поддержка запретов поворотов (alpha!)
  • ну и по мелочи ещё…

собственно, склейка настраивается всего одним параметром: $mergecos :slight_smile:
дороги соединяются, если косинус угла поворота > $mergecos
то есть если $mergecos==-1, то клеятся все дороги, 0 - только те, у которых на стыке поворот <90 градусов, итд
надеюсь, понятно объяснил :slight_smile:

а про запреты я уже писал. пока не работают для дорог, которые надо разрезать

À ìîæíî åùå âåðñèþ äëÿ MapSource âûêëàäûâàòü? Òàê óäîáíåå ïðîâåðÿòü íàðèñîâàíîå :roll_eyes:

а смысл? её быстрее самому сваять :slight_smile:

берём gmaptool http://www.anpo.republika.pl/download.html
gmt -S gmapsupp.img
install.bat

Я тут совсем запарился на работе перед отпуском :wink:
Надо бы сгенерировать “обратный” индекс: для
каждого роутингового нода - лист из ways, которым он принадлежит.
Кстати, если NodeID и RoadID брать прямо из ОСМ, роутинговый cgpsmapper ругается ?

фик знает, я не пробовал. зависит от внутренних структур маппера.

обновилась карта всей России: http://garminmapsearch.com/osm/mp/2008-07-18_175749_russia.rar
в логе обнаружено ровно 15 запретов поворотов
из них 14 - мои, и один неправильный (в Тюмени) :wink:
напоминаю, что если дорога не односторонняя, то в точке запрета её нужно разрезать,
иначе невозможно определить направление движения

Вообще-то был бы идеальный вариант, .img все равно эти цифры внутри не хранит.

Поможет только автоматическая нарезка в редакторе, и “простой” редактор запретов/скоростей типа того, что у http://probki.net

Åùå ïðèøëîñü ïåðåèìåíîâàòü ïîëó÷èâøèéñÿ img-ôàéë â mapset00.
Ñïàñèáî, liosha :slight_smile:

а вот этого как раз делать было не надо
надо было в ту же папку бросить cgpsmapper.exe, чтобы install.bat скомпилировал обзорку
а так у тебя вместо обзорки используется основная карта, а основной как бы и нет :confused: