You are not logged in.
- Topics: Active | Unanswered
Announcement
Please create new topics on the new site at community.openstreetmap.org. We expect the migration of data will take a few weeks, you can follow its progress here.***
#26 2008-07-24 17:28:31
- usm78-gis
- Member
- Registered: 2008-04-21
- Posts: 2,672
Re: Москва. Прокладка маршрутов
надо просто аккуратно переписывать всё на Си++
Вот еще наткнулся на старую программу
http://mapserver.sk/~wonder/qnavigator
Core of the application is due efficiency written in C++Offline
#27 2008-07-24 18:09:39
- kakkoii
- Member
- From: Perm
- Registered: 2008-07-18
- Posts: 16
Re: Москва. Прокладка маршрутов
Добавил квадрат 55.88964650289677,57.86787756319366,56.468058305990226,58.16338400694664
Спасибо!
Offline
#28 2008-07-24 18:26:30
- kakkoii
- Member
- From: Perm
- Registered: 2008-07-18
- Posts: 16
Re: Москва. Прокладка маршрутов
Для того, чтобы путь прошёл по внешней стороне кольца, надо, чтобы оно было односторонним. Это кольцо я поправил.
В вики про junction=roundabout написано:
"but there is no need to tag them as oneway=*. The way should then be tagged with junction=roundabout."
У нас в городе большинство колец без явного указания oneway.
Offline
#29 2008-07-24 19:03:32
- vvoovv
- Moderator
- Registered: 2008-03-04
- Posts: 2,262
Re: Москва. Прокладка маршрутов
На странице вики про junction=roundabout также есть такое:
Implies:
* oneway=yes
То есть таг junction=roundabout автоматически подразумевает oneway=yes
Offline
#30 2008-07-25 04:34:44
- AkMeR
- Member

- From: Samara
- Registered: 2008-02-27
- Posts: 1,158
Re: Москва. Прокладка маршрутов
Собственно, есть страница с рекомендациями для программ прокладки маршрутов....
тынц.
Offline
#31 2008-07-25 06:06:57
- Vsevolod Shorin
- Member
- From: Moscow
- Registered: 2008-07-21
- Posts: 30
- Website
Re: Москва. Прокладка маршрутов
На странице вики про junction=roundabout также есть такое:
Implies:
* oneway=yesТо есть таг junction=roundabout автоматически подразумевает oneway=yes
Да не вопрос. Теперь такой тег программа тоже считает признаком одностороннего движения :-)
Только вот у обсуждаемого кольца его тоже не было.
Offline
#32 2008-07-25 07:01:19
- Vsevolod Shorin
- Member
- From: Moscow
- Registered: 2008-07-21
- Posts: 30
- Website
Re: Москва. Прокладка маршрутов
Ну и не стал дожидаться, пока попросят, добавил Питер.
А чтобы не запутаться, добавил справа вверху кнопку Bounds, которая показывает куски карты, загруженные в программу.
Offline
#33 2008-07-25 07:41:29
- kakkoii
- Member
- From: Perm
- Registered: 2008-07-18
- Posts: 16
Re: Москва. Прокладка маршрутов
Маршрут, почему-то, прокладывается через АЗС (highway = service).

Вот эти места:
http://www.openstreetmap.org/?lat=57.99 … ers=B00FTF
http://www.openstreetmap.org/?lat=58.00 … ers=B00FTF
Программа - супер. В отличие от гармина, она предлагает мне именно тот маршрут до работы, по которому я езжу. Гармин считает, что в объезд будет быстрее.
Offline
#34 2008-07-25 08:46:30
- Vsevolod Shorin
- Member
- From: Moscow
- Registered: 2008-07-21
- Posts: 30
- Website
Re: Москва. Прокладка маршрутов
Маршрут, почему-то, прокладывается через АЗС (highway = service).
http://photo.raid.ru/albums/userpics/10620/01~0.jpg
http://photo.raid.ru/albums/userpics/10620/02~0.jpg
Вот эти места:
http://www.openstreetmap.org/?lat=57.99 … ers=B00FTF
http://www.openstreetmap.org/?lat=58.00 … ers=B00FTFПрограмма - супер. В отличие от гармина, она предлагает мне именно тот маршрут до работы, по которому я езжу. Гармин считает, что в объезд будет быстрее.
Да, мой косяк. Программа работает с расстояниями между парами точек, в которых пересекаются дороги. Но я не учёл, что пути между такими точками может быть два и брал просто последний. Исправил:
http://cooper.gpsvp.com:6789/#57.989653 … 8197784424
Offline
#35 2008-07-25 09:50:25
- MBNEWS
- Member
- Registered: 2008-05-26
- Posts: 30
Re: Москва. Прокладка маршрутов
Идея в копилку: думаю имеет смысл указывать на/рядом с треком протяженность маршрута. Данные о масштабе есть, так что приблизительно посчитать протяженость, думаю, не очень сложно.
Offline
#36 2008-07-25 09:50:31
- kakkoii
- Member
- From: Perm
- Registered: 2008-07-18
- Posts: 16
Re: Москва. Прокладка маршрутов
Похоже программа игнорирует теги oneway = true.
Offline
#37 2008-07-25 10:03:01
- Vsevolod Shorin
- Member
- From: Moscow
- Registered: 2008-07-21
- Posts: 30
- Website
Re: Москва. Прокладка маршрутов
Идея в копилку: думаю имеет смысл указывать на/рядом с треком протяженность маршрута. Данные о масштабе есть, так что приблизительно посчитать протяженость, думаю, не очень сложно.
Посчитать протяжённость действительно несложно, потому что в программе всё это отлично известно. Сделаю.
Offline
#38 2008-07-25 10:04:17
- Vsevolod Shorin
- Member
- From: Moscow
- Registered: 2008-07-21
- Posts: 30
- Website
Re: Москва. Прокладка маршрутов
Похоже программа игнорирует теги oneway = true.
Вряд ли. Но какие-то вариации может и игнорировать, надо проверить. Можно ссылку на конкретный коротенький маршрут, который проходит там, где нельзя?
Offline
#39 2008-07-25 11:00:13
- kakkoii
- Member
- From: Perm
- Registered: 2008-07-18
- Posts: 16
Re: Москва. Прокладка маршрутов
Offline
#40 2008-07-25 11:12:04
- Vsevolod Shorin
- Member
- From: Moscow
- Registered: 2008-07-21
- Posts: 30
- Website
Re: Москва. Прокладка маршрутов
?????. ??????????? ????????. ?????????????? ?????? oneway=yes. ??????? oneway=true ? oneway=1. ?????? ?????????.
P.S. ?????? ???? ?????????? ??-?? ?????? ??? ??????????, ?? ????? ?????.
Offline
#41 2008-07-25 18:10:43
- Vsevolod Shorin
- Member
- From: Moscow
- Registered: 2008-07-21
- Posts: 30
- Website
Re: Москва. Прокладка маршрутов
Надобавлял ещё кучу всего: Калугу, Ярославль, Тверь, всю дорогу от Москвы до Питера. Чтобы меньше нагружать сервер, оставил четыре обновления - в 3,9,15,21.
Сейчас качается, появится может через полчасика.
Offline
#42 2008-07-26 17:52:48
- liosha
- Member

- From: Moscow
- Registered: 2008-03-04
- Posts: 8,447
- Website
Re: Москва. Прокладка маршрутов
а каким образом выкачиваются данные?
похоже, osmxapi сдулся, надо какой-то другой способ придумывать
Offline
#43 2008-07-26 21:47:50
- Vsevolod Shorin
- Member
- From: Moscow
- Registered: 2008-07-21
- Posts: 30
- Website
Re: Москва. Прокладка маршрутов
а каким образом выкачиваются данные?
похоже, osmxapi сдулся, надо какой-то другой способ придумывать
Я маленькими квадратиками выкачиваю через старый API. Как раз хотел у тебя спросить совета, где бы мне взять всю Россию :-)
Offline
#44 2008-07-27 04:41:38
- liosha
- Member

- From: Moscow
- Registered: 2008-03-04
- Posts: 8,447
- Website
Re: Москва. Прокладка маршрутов
а нет готового скрипта для скачки-склейки? чтобы велосипед не изобретать... ![]()
сейчас всю Россию я беру тут: http://downloads.cloudmade.com/asia/russia/
но там только еженедельно обновляется
Offline
#45 2008-07-27 08:07:26
- Vsevolod Shorin
- Member
- From: Moscow
- Registered: 2008-07-21
- Posts: 30
- Website
Re: Москва. Прокладка маршрутов
а нет готового скрипта для скачки-склейки? чтобы велосипед не изобретать...
сейчас всю Россию я беру тут: http://downloads.cloudmade.com/asia/russia/
но там только еженедельно обновляется
Есть список url-ов для нужной мне территории, часть из которых, для Москвы и Питера, я сгенерировал автоматически, чтобы куски были маленькими. Я по списку выкачиваю wget-ом, удаляю те файлы, которые не содержат корректный XML и копирую оставшиеся в директорию с предыдущей версией. Склеивать не приходится, просто моя программа читает несколько файлов и игнорирует дубликаты. То есть скрипт такой:
cd /home/vsevolod/routing/new
../spliturl.py | bash
for i in *.osm ; do xmllint --format $i > /dev/null || rm $i; done
mv -v *.osm ../stable/
cd ..
pkill analyze3.py
mv error.log error.log.`date +%s`
./analyze3.py stable/*.osm > out.log 2> error.log &А spliturl.py состорит из примерно таких строк:
la0 = 59.713482370444446
lo0 = 29.4927978515625
la1 = 60.23776612113594
lo1 = 30.89080810546875
lad = (la1 - la0) / 8
lod = (lo1 - lo0) / 8
for i in range(0,8):
for j in range(0,8):
print "wget -O SPb%(i)d%(j)d.osm http://www.openstreetmap.org/api/0.5/map?bbox=%(lo1)f,%(la1)f,%(lo2)f,%(la2)f"%{'i':i, 'j':j, 'lo1':lo0 + i * lod, 'lo2':lo0 + i * lod + lod, 'la1':la0 + j * lad, 'la2':la0 + j * lad + lad}
print "wget --tries=3 -O Murmansk.osm http://www.openstreetmap.org/api/0.5/map?bbox=32.704963580923,68.82430018480561,33.444507117554,69.08779420309446"За ссылку спасибо. Мне еженедельная пока вполне подойдёт, тем более, что её можно попробовать комбинировать со свежими данными, если грузить их раньше.
Offline
#46 2008-07-27 09:56:29
- Jagor
- Member
- From: Minsk
- Registered: 2008-07-06
- Posts: 44
Re: Москва. Прокладка маршрутов
Vsevolod Shorin, а можете ещё добавить Минск(bbox=27.384,53.803,27.779,53.992)?
Offline
#47 2008-07-27 10:01:51
- Jagor
- Member
- From: Minsk
- Registered: 2008-07-06
- Posts: 44
Re: Москва. Прокладка маршрутов
а нет готового скрипта для скачки-склейки? чтобы велосипед не изобретать...
сейчас всю Россию я беру тут: http://downloads.cloudmade.com/asia/russia/
но там только еженедельно обновляется
Есть небольшая библиотека на руби для OSM. Она умеет, в том числе, и сливать большие карты по кускам. Могу выслать если интерисует.
Offline
#48 2008-07-27 10:52:02
- liosha
- Member

- From: Moscow
- Registered: 2008-03-04
- Posts: 8,447
- Website
Re: Москва. Прокладка маршрутов
выкладывай, коли есть ![]()
Offline
#49 2008-07-27 12:34:13
- Jagor
- Member
- From: Minsk
- Registered: 2008-07-06
- Posts: 44
Re: Москва. Прокладка маршрутов
Вот первая публичная версия - http://files.leonenko.info/OSMTools.zip
пример использования для загрузки (грузит по квадратам 0.1х0.1 - для надежности):
./load_map.rb -min_lon 27.495933 -max_lon 27.500455 -min_lat 53.893498 -max_lat 53.89542 -o test.osm
можно создавать мультиполигоны (создаёт relation, меняет направление контуров при необходимости, удаляет теги с внутренних контуров при полном совпадении с тэгами внешнего):
./multipolygon.rb OUTER_ID INNER_ID1 INNER_ID2 ...
можно запреты поворотов (добавить -viaway, усли via - не Node, a Way):
./turn_restriction.rb -from 25597121 -to 25230982 -via 275076538 -type no_left_turn
все параметры в options.rb
Last edited by Jagor (2008-07-27 12:48:15)
Offline
#50 2008-07-27 13:40:54
- liosha
- Member

- From: Moscow
- Registered: 2008-03-04
- Posts: 8,447
- Website
Re: Москва. Прокладка маршрутов
попробовал...
на куске 1х1 градус вылетело по таймауту
кусок 0.4х0.4 градуса скачался, но в получившемся xml-е порядок значений стал другой
<node user="Sforza" lat="55.2599407" timestamp="2008-04-03T21:05:48+01:00" lon="37.4011769" id="255595270">такое дело сильно усложнит разбор регекспами...
Offline