Но это отношение, по крайней мере, находится в разделе “Established uses of Relations”. На мой взгляд, когда его вынесут на голосование, его полюбому заапрувят. Так что можно использовать отношение без боязни…
Вроде бы доделал назначение роутинговых параметров…
Попробую теперь довести до компиляции с роутингом хотя бы небольшой кусок территории вокруг дома.
Если получится - выложу конвертер
обнаружил баг: когда есть “вырожденные” дороги из одной точки, маппер вылетает по “access violation”
если их отфильтровывать, компиляция проходит, и роутинг в девайсе работает
Да была такая шутка у потлаха - дублировал дороги. Я это замечал только по енпонятно откуда взявшимся роутинговым узлам посередине дороги. Потом шел в ЖОСМ и правил.
У меня конвертор написан на “остором-С”. Таскает квадратиками данные с ОСМа и сохраняет в кеше. Пока внешнего настроечного файла нет и по слоям не бьет.
Хмм. Я вижу проблему только в кольцах (start_node=end_node), все остальные вроде как
несложно порезать.
Вот бы еще автоматически объединить два way, касающихся в нероутинговом ноде и с совпадающими тэгами.
Было бы неплохо, но думаю что нет.
Я пользуюсь
./get_ways_by_list 2>/dev/null
и редактирую в JOSM
#!/bin/bash
if [ $# -ne 1 ]
then
echo Usage: $0 waylist
exit 1
fi
waylist=$1
if [ ! -f ${waylist} ]
then
echo can not open waylist=${waylist}
exit 1
fi
echo '<?xml version="1.0" encoding="UTF-8"?>'
echo '<osm version="0.5" generator="get_ways_by_list">'
for way_id in `cat ${waylist}`
do
rm -f way$$
curl "http://api.openstreetmap.org/api/0.5/way/${way_id}" |\
awk '{if ($1 != "<?xml" && $1 != "<osm" && $1 != "</osm>") print}' | tee way$$
awk -F\" '{if ($1 == " <nd ref=") system("curl http://api.openstreetmap.org/api/0.5/node/"$2)}' way$$ |\
awk '{if ($1 != "<?xml" && $1 != "<osm" && $1 != "</osm>") print}'
rm -f way$$
done
echo '</osm>'