You are not logged in.

Announcement

*** NOTICE: forum.openstreetmap.org is being retired. Please request a category for your community in the new ones as soon as possible using this process, which will allow you to propose your community moderators.
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: Москва. Прокладка маршрутов

Vsevolod Shorin wrote:

надо просто аккуратно переписывать всё на Си++

Вот еще наткнулся на старую программу
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: Москва. Прокладка маршрутов

Vsevolod Shorin wrote:

Добавил квадрат 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: Москва. Прокладка маршрутов

Vsevolod Shorin wrote:

Для того, чтобы путь прошёл по внешней стороне кольца, надо, чтобы оно было односторонним. Это кольцо я поправил.

В вики про 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: Москва. Прокладка маршрутов

vvoovv wrote:

На странице вики про 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).
01~0.jpg
02~0.jpg
Вот эти места:
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: Москва. Прокладка маршрутов

kakkoii wrote:

Маршрут, почему-то, прокладывается через АЗС (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: Москва. Прокладка маршрутов

MBNEWS wrote:

Идея в копилку: думаю имеет смысл указывать на/рядом с треком протяженность маршрута. Данные о масштабе есть, так что приблизительно посчитать протяженость, думаю, не очень сложно.

Посчитать протяжённость действительно несложно, потому что в программе всё это отлично известно. Сделаю.

Offline

#38 2008-07-25 10:04:17

Vsevolod Shorin
Member
From: Moscow
Registered: 2008-07-21
Posts: 30
Website

Re: Москва. Прокладка маршрутов

kakkoii wrote:

Похоже программа игнорирует теги 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: Москва. Прокладка маршрутов

liosha wrote:

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

Я маленькими квадратиками выкачиваю через старый API. Как раз хотел у тебя спросить совета, где бы мне взять всю Россию :-)

Offline

#44 2008-07-27 04:41:38

liosha
Member
From: Moscow
Registered: 2008-03-04
Posts: 8,447
Website

Re: Москва. Прокладка маршрутов

а нет готового скрипта для скачки-склейки? чтобы велосипед не изобретать...  smile

сейчас всю Россию я беру тут: 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: Москва. Прокладка маршрутов

liosha wrote:

а нет готового скрипта для скачки-склейки? чтобы велосипед не изобретать...  smile

сейчас всю Россию я беру тут: 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: Москва. Прокладка маршрутов

liosha wrote:

а нет готового скрипта для скачки-склейки? чтобы велосипед не изобретать...  smile

сейчас всю Россию я беру тут: 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: Москва. Прокладка маршрутов

выкладывай, коли есть  smile

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

Board footer

Powered by FluxBB