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.***

#501 2009-06-22 06:18:02

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

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

мне раньше попадались карты с трамвайными путями, и они только раздражали.
поэтому я сразу от них отказался. кстати, mkgmap их делает.

Сейчас адресные данные берутся из: (в порядке приоритета)

из самого объекта
Label - cladr:name(временно),name,ref,int_ref,addr:housenumber
HouseNumber - addr:housenumber,addr:housename
StreetDesc - addr:street

из полигона города
CityName - place_name,name
RegionName - addr:region,is_in:region,addr:state,is_in:state
CountryName - addr:country,is_in:country_code,is_in:country

Offline

#502 2009-06-22 08:03:00

Yuri Nazarov
Member
Registered: 2008-04-12
Posts: 237

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

andriano wrote:

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

Нет.  housename -- это имя здания, используется _вместо_ номера в _почтовом_ адресе.
Учреждения, офисы и пр. -- это описание того что в этом здании находится (POI?), они _не_ являются почтовым адресом и не должны быть в поле housename.

Offline

#503 2009-06-22 09:51:09

Igor_blg
Member
From: Bologoe
Registered: 2008-12-10
Posts: 60

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

liosha wrote:

Сейчас адресные данные берутся из: (в порядке приоритета)

из самого объекта
Label - cladr:name(временно),name,ref,int_ref,addr:housenumber
HouseNumber - addr:housenumber,addr:housename
StreetDesc - addr:street

из полигона города
CityName - place_name,name
RegionName - addr:region,is_in:region,addr:state,is_in:state
CountryName - addr:country,is_in:country_code,is_in:country

а как же poi, которые не в полигоне, но имеют заполненные addr:district addr:region addr:country (например, населенные пункты)
предлагаю вариант

     for my $i (keys %cityname) {
           if ( $citybound{$i}->contains([split ",",$nodes{$id}]) ) {
               print "CityName=".$cityname{$i}->[0]."\n";
               print "RegionName=".$cityname{$i}->[1]."\n"          if $cityname{$i}->[1];
               print "CountryName=".$cityname{$i}->[2]."\n"         if $cityname{$i}->[2];
               last;
           }.
#добавить
           elsif ( $nodetag{"addr:district"} or $nodetag{"addr:region"} ) {
             printf "RegionName=";.
             printf "%s", convert_string($nodetag{"addr:district"}) if  $nodetag{"addr:district"};
             printf " "                                             if ( $nodetag{"addr:district"} and $nodetag{"addr:region"} );
             printf "%s", convert_string($nodetag{"addr:region"})   if  $nodetag{"addr:region"};
             printf "\n";
             printf "CountryName=%s\n", convert_string($nodetag{"addr:country"})    if $nodetag{"addr:country"}    ;
           }
#конец добавления
           elsif ( $defaultcity ) {
               print "CityName=$defaultcity\n";
           }
       }

по крайней мере, населенные пункты в нормальной стране ищутся

Offline

#504 2009-06-22 09:59:21

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

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

сделаю на пробу что-нибудь похожее.
но боюсь, что как обычно это приведёт только к появлению кучи стран типа Россия, РФ, RU, Russia итд, в которых найти уже ничего будет невозможно

Offline

#505 2009-06-22 11:37:47

tibman
Member
Registered: 2009-06-22
Posts: 109

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

так всетаки, для навитела работает уже адресный поиск?
делал так:
скачивал __belarus.mp.rar 2009-06-22 09:42  с http://gpsmapsearch.com/osm/mp/
конвертил в nm2 версии 3.1 gpsmapedit-ом
навител пишет -адресных данных не обнаружено, работает только поиск по нас. Пунктам

Offline

#506 2009-06-22 11:47:17

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

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

скажем так, поиск в навителе может работать, если привести данные к нужной схеме.
http://forum.openstreetmap.org/viewtopi … 786#p14786
то есть надо обнести города полигонами place=city/town

пока этого не сделано, поиска не будет

Offline

#507 2009-06-22 12:10:31

Igor_blg
Member
From: Bologoe
Registered: 2008-12-10
Posts: 60

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

liosha wrote:

сделаю на пробу что-нибудь похожее.
но боюсь, что как обычно это приведёт только к появлению кучи стран типа Россия, РФ, RU, Russia итд, в которых найти уже ничего будет невозможно

может бота попросить smile
если нод в полигоне области и заполнены addr:country или addr:region - то проверить и при необходимости переписать как надо

Offline

#508 2009-06-22 12:16:10

Igor_blg
Member
From: Bologoe
Registered: 2008-12-10
Posts: 60

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

у меня еще есть предложение  big_smile - рассмотреть вопрос о типах улиц в черте города (полигона)

например, вне населенного пункта (или по умолчанию)
highway         road         0x00
highway         unclassified 0x00
highway         motorway     0x01
highway         trunk        0x02
highway         primary      0x02
highway         secondary    0x03
highway         tertiary     0x03

а в населенном пункте (попадание в полигон города)
highway         primary      0x03
highway         secondary    0x04
highway         tertiary     0x05
highway         road         0x06
highway         unclassified 0x06

а то по городу ездим по шоссе, а за городом по крупным улицам

Offline

#509 2009-06-22 12:30:05

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

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

Igor_blg wrote:

рассмотреть вопрос о типах улиц в черте города (полигона)

принципиально возможно, но не при текущем формате конфигов.
так что только когда соберусь их переделывать....

Offline

#510 2009-06-22 12:32:43

Igor_blg
Member
From: Bologoe
Registered: 2008-12-10
Posts: 60

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

tibman wrote:

так всетаки, для навитела работает уже адресный поиск?
делал так:
скачивал __belarus.mp.rar 2009-06-22 09:42  с http://gpsmapsearch.com/osm/mp/
конвертил в nm2 версии 3.1 gpsmapedit-ом
навител пишет -адресных данных не обнаружено, работает только поиск по нас. Пунктам

все в навителе работает как надо, правда те mp не полностью раскрывают все типы навитела (у меня свои конфиги), но принцип верен - правильная карта - правильный поиск smile

Offline

#511 2009-06-22 12:40:02

tibman
Member
Registered: 2009-06-22
Posts: 109

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

Igor_blg wrote:
tibman wrote:

так всетаки, для навитела работает уже адресный поиск?
делал так:
скачивал __belarus.mp.rar 2009-06-22 09:42  с http://gpsmapsearch.com/osm/mp/
конвертил в nm2 версии 3.1 gpsmapedit-ом
навител пишет -адресных данных не обнаружено, работает только поиск по нас. Пунктам

все в навителе работает как надо, правда те mp не полностью раскрывают все типы навитела (у меня свои конфиги), но принцип верен - правильная карта - правильный поиск smile

ну так расскажи как сделать все для навитела

Offline

#512 2009-06-22 12:52:25

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

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

tibman wrote:

ну так расскажи как сделать все для навитела

дык сказано же: обнести города полигонами

Offline

#513 2009-06-22 12:57:07

Igor_blg
Member
From: Bologoe
Registered: 2008-12-10
Posts: 60

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

первое что надо сделать - это сделать карту smile,
сказали же адресный поиск работает только внутри отрисованных полигонов городов с правильными тегами
вот и все.
а если есть желание более заточить карту под навител (касаемо только типов пои), то с тем mp , что в архиве  -уже ничего не сделать,
надо брать данные в формате osm и проходить по ним скриптом с немного измененными конфигами.
свои наработки готов предоставить, если кому интересно.

Offline

#514 2009-06-22 15:34:47

Ivan Komarov
Member
Registered: 2008-10-02
Posts: 1,050

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

Интересно smile

Offline

#515 2009-06-24 22:36:59

OverQuantum
Member
From: Zelenograd
Registered: 2009-06-17
Posts: 1,582
Website

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

Есть ли какой-то способ поставить POI=0x6401 ("мост") на средину дороги (т.е. в poly.cfg - "r") - osm-объекта с bridge=yes ?
Ну типа как POI=0x650d ставится на средину полигона natural=water.
Судя по коду, POI ставится только когда типа "p".
Поиском искал...
Или подскажите, как в mp (в итоге для Russa) затолкать мосты, в т.ч. деревянные пешеходные.


Это же OpenStreetMap. Он больше внутри, чем снаружи.

Offline

#516 2009-06-24 22:59:50

OverQuantum
Member
From: Zelenograd
Registered: 2009-06-17
Posts: 1,582
Website

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

И второй вопрос. В http://wiki.openstreetmap.org/wiki/Multipolygon есть такое

Tagging
It is suggested to apply all tags which describe the area to the relation, and not to the ways. In many cases this may result in completely untagged ways.
Implementation for Compatibility:
 * Drawing style is take from the tagging of the relation itself
 * If relation is not tagged, the drawing style of outer ways is used.
   If the outer styles mismatch or no style is found it is considered an error.
 * Inner tagging leads to inner drawing. If inner tagging style equals outer style (old method)
   the inner style should be handled as empty.

Что думаете по этому поводу?
Сейчас osm2mp не сделал вообще объектов для варианта "completely untagged ways".

Last edited by OverQuantum (2009-06-24 23:00:17)


Это же OpenStreetMap. Он больше внутри, чем снаружи.

Offline

#517 2009-06-25 08:20:26

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

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

делать точку для моста в принципе несложно, но при текущем формате конфигов нельзя.

мультиполигоны сейчас есть только в изначальном формате: один outer со всеми свойствами, много inner-ов.
доработка - пока в планах smile

Offline

#518 2009-06-25 09:52:51

OverQuantum
Member
From: Zelenograd
Registered: 2009-06-17
Posts: 1,582
Website

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

liosha wrote:

делать точку для моста в принципе несложно, но при текущем формате конфигов нельзя.

мультиполигоны сейчас есть только в изначальном формате: один outer со всеми свойствами, много inner-ов.
доработка - пока в планах smile

Ладно, напишу пока небольшой препроцессор для .osm-файла smile


Это же OpenStreetMap. Он больше внутри, чем снаружи.

Offline

#519 2009-06-26 02:24:16

Aleksandr Dezhin
Member
From: Msk
Registered: 2008-05-25
Posts: 2,109
Website

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

А предложения/патчи по формату конфигов принимаются? Или это пока не входит в планы?


[ Проверка границ и НП | Дампы | Валидатор рек | Кое-что ещё ]
- Нет! Не надо пытаться. Делай. Или не делай. Не надо пытаться. (c) Йода

Offline

#520 2009-06-26 13:03:38

Igor_blg
Member
From: Bologoe
Registered: 2008-12-10
Posts: 60

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

свои наработки готов предоставить, если кому интересно.

Ivan Komarov wrote:

Интересно smile

прошу строго не судить
пока сделалано
header_navitel для навитела (делал под себя)
к оригинальным конфигам в конце дабавлены навителовские пои и гарминовские с измененными параметрами (для переопределения)
для пои вне полигонов городов прописываются адресные данные из addr:country addr:region (думаю еще addr:district добвыить)
также для пои выводятся использованные комбинации тегов, не описанные в конфигах

http://www.bologoe.net/gps/osm2mp_nn.zip
все настройки и параметры я храню в скриптах osm2mp_nn.sh osm2mp_nn.bat

под линухом работает
под виндой не до конца проверил,  у меня не работает

скрипт пишет

C:\Igor\osm\osm2mp_nn>_osm2mp_nn.bat
Can't locate loadable object for module Math::Geometry::Planar::GPC in @INC (@INC contains: C:/Perl/site/lib C:/Perl/lib
 .) at C:/Perl/site/lib/Math/Geometry/Planar.pm line 21
Compilation failed in require at C:/Perl/site/lib/Math/Geometry/Planar.pm line 21.
BEGIN failed--compilation aborted at C:/Perl/site/lib/Math/Geometry/Planar.pm line 21.
Compilation failed in require at osm2mp_nn.pl line 16.
BEGIN failed--compilation aborted at osm2mp_nn.pl line 16.

cpan пишет

cpan> install Math::Geometry::Planar::GPC
Going to read C:\Perl\cpan\Metadata
  Database was generated on Wed, 24 Jun 2009 11:27:00 GMT
Math::Geometry::Planar::GPC is up to date (1.04).

вручную компилить

C:\Perl\cpan\build\Math-Geometry-Planar-GPC-1.04-qSwqQC>PERL makefile.pl
Writing Makefile for Math::Geometry::Planar::GPC

C:\Perl\cpan\build\Math-Geometry-Planar-GPC-1.04-qSwqQC>make

Microsoft (R) Program Maintenance Utility   Version 1.50
Copyright (c) Microsoft Corp 1988-94. All rights reserved.

        cl -c    -nologo -GF -W3 -MD -Zi -DNDEBUG -O1 -DWIN32 -D_CONSOLE -DNO_STRICT -DHAVE_DES_FCRYPT -DUSE_SITECUSTOMI
ZE -DPRIVLIB_LAST_IN_INC -DPERL_IMPLICIT_CONTEXT -DPERL_IMPLICIT_SYS -DUSE_PERLIO -DPERL_MSVCRT_READFIX -MD -Zi -DNDEBUG
 -O1    -DVERSION=\"1.04\"  -DXS_VERSION=\"1.04\"  "-IC:\Perl\lib\CORE"   GPC.c
"cl" не является внутренней или внешней
командой, исполняемой программой или пакетным файлом.
NMAKE : fatal error U1077: 'C:\WINDOWS\system32\cmd.exe' : return code '0x1'
Stop.

где брать cl - и что это не разобрался еше, так что если ошибки в батнике - извините smile

Offline

#521 2009-06-26 20:11:47

andriano
Member
Registered: 2009-06-15
Posts: 1,667

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

??????????, ???????, ????? ????????? ??????, ??????? ????? ????????? ??????????? ??????????????? MP ? ?????? ???????? (???? 00999004.mp ?? 23.06). ???, GPSmapEdit v 1.0.57.0 ??? ??????? ???????? ? nm2 3.2.6 ??????? ?? ??????

Exporting map to file 'N:\earth_map\_07\00999004_a.nm2'...
WARNING: There are two nodes at the same position (N55°23.104' E39°01.901')

ERROR: Export has failed.
Please use menu item 'Tools | Verify Map...' to locate problems in the map.

? ???? ????? verify ????? 8809 ??????...
??? ? ????? ????????????

? ????? ?????? ????? ????????? ???????? MP-????? ??????? ? nm2 ??????????????? ??????? (????????? ????? ???????? ?????? - ????? ????? ????????? ????????? ??? ???????). ??? ??????????? ???????????? ?????????? ? ?????????? ?????????????? ????, ??????? ???????? ??????? 26.3 ?????? ?????? ??????? 31.8. ? ???? ????? ?????? ??? ?????????????? ????? ????????? ????? ?????????? ???????? ?? ????????? ???????? ????.
????? ????, ?????????, ??? ????? ?????????????? GPSmapedit'?? ? ????? ????????? ?????????, ??????? ????????????? ? ???????? MP, ? ?????? ?????? Region/RegionIdx, Cyty/CityIdx. ?.? ?????????? ???? ? ?? ??????????, ?? ???, ?? ??????? ????, ???????? ????? ????????????? ????????.
?????????????? ? ??????????? ?????? ?????? ???? ????????? ?????????? ?????? ??????????, ?? ?????? ?? ????? ????????, ? ?????, ?????????? ?????? (AVM - ??? ???? ??????, ????????????? ? ?????? ?????? ?? ???????????? - ??? ???, ?????????, ??????? ????? ????????? ???????? ??? ?????? ?????? ??????????)
?????????? (?????)   ????   ?????   ??????
MP   31764759   26368942   20.5%
AVM   9488912   9135862   3.9%
POI   12005   12001   0.03%
PolyLines   29569   29556   0.03%
Polygons   41235   41204   0.08%
Labels   16249   14743   10.2%
??????, ???? ?????????? ???? ??????????? ?? 10.2%, ?????????? ?????????? ???? ??????????? ? 79737 ?? 47334 ?.?. ?? 68.5%
?.?. ?????, ??? ?????????? ?????? ?????????? ????????? ? ???????? ?? ???? ?????????? ?????????? ????, ? ?????? ????? ?? ???? ?????????? ?????????? ?????????? ????.
??????????, ??????? ???:
1. ????????? ??? ?? ???? GPSmapedit ???????? ? ?????? ???????????
2. ????????????? ?? ????????? ??????? ???????? ?????? ? MP ??????????? ???, ??? ?????????? GPSmapedit?

PS. ????? ?????, ????????? ????????, ????? ?????? ????? ??????????? GPSmapedit ? ???? ?? ?? ??? (??????? ?? ??????? ???????? ???? ????? ...)

Offline

#522 2009-06-26 20:18:48

usm78-gis
Member
Registered: 2008-04-21
Posts: 2,672

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

Igor_blg wrote:

где брать cl - и что это не разобрался еше

Это компилятор C, aka gcc/mingw smile

Offline

#523 2009-06-26 20:39:39

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

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

andriano, мапедит обрезает все координаты до 5 знаков после запятой.
кроме того, пересохранение адресации в старый формат (CityIdx) тоже размер уменьшает.

из новостей:
* вместе с картами городов теперь будет выкладываться файл errors-navitel.log - это список мест с потенциальными ошибками при экспорте в навител
* должен появиться адресный поиск в Белоруссии - wildMan сваял скрипт для предобработки

Offline

#524 2009-06-26 20:56:53

andriano
Member
Registered: 2009-06-15
Posts: 1,667

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

liosha wrote:

andriano, мапедит обрезает все координаты до 5 знаков после запятой.
кроме того, пересохранение адресации в старый формат (CityIdx) тоже размер уменьшает.

1. Это 1м. GPS все равно даже такой точности не дает. Так зачем больше знаков?
2. Вот меня и удивляет, когда формат, который сразу в нескольких отношениях лучше, объявляется "старым".
Кстати, уменьшение "при пересохранении в старый формат" - это как раз и есть уменьшение за счет избавления от излишних повторений одних и тех же имен по много раз, о котором я писал (те 68%-10%). Но есть и еще уменьшение, которое под это дело не подходит (10%), вот о его причине интересно было бы знать.

Ну и общий вопрос: как все-таки следует конвертировать MP (тот, который из OSM) в NM2?

Offline

#525 2009-06-26 21:19:25

OverQuantum
Member
From: Zelenograd
Registered: 2009-06-17
Posts: 1,582
Website

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

liosha wrote:

andriano, мапедит обрезает все координаты до 5 знаков после запятой.

Ну не всегда же. Если сделать Level0=26 мапэдит округляет при загрузке и сохранении до 6 знаков.
Другое дело что масштаб, при котором появляется Level0, при Level0=26 слишком детальный, если сохранять не в Navitel-файл...
А для Navitel-а можно сконфигурить Level0=26(24) или Level0=26(23) после загрузки .mp-файла и будет и точность хорошая и масштаб появления Level0 нормальный.

andriano wrote:

1. Это 1м. GPS все равно даже такой точности не дает. Так зачем больше знаков?

Чтобы объекты имели ту форму, которую им задали в OSM. Прямые углы и пр.
При Level0=24 кое-что искажается.

Last edited by OverQuantum (2009-06-26 22:20:55)


Это же OpenStreetMap. Он больше внутри, чем снаружи.

Offline

Board footer

Powered by FluxBB