Универсальный валидатор (рутинг, адресация) на базе конвертации в СГ

Elkim, мне приятно что вы меня приветствуете, но вообще-то спрашивать теперь нужно с KonTur’а, он теперь главный по тарелочкам)

Даже близко не знаю, как теперь устроен процесс))

А он эту ветку не читает?
PS мне собственно не ответ почему нужен, мне бы что бы исправить бы… :slight_smile:

Я все читаю. Только ответов у меня нету.
Тему с population уже поднимали не раз.
https://forum.openstreetmap.org/viewtopic.php?pid=685304#p685304
https://forum.openstreetmap.org/viewtopic.php?pid=690400#p690400

Точнее, ответ у меня есть - надо переписывать валидатор с учетом развития osm2mp.

Может быть я ошибаюсь, но мне кажется, что проблема здесь:

GitHub\osm2dcm\jmp2mp\src\ru\zkir\mp2mp\taskvalidator\clsAddrRegistryTest.java

//Типы НП
  final String otCity = "0x0700"; //'-city
  final String otTown = "0x0a00"; //   '-town
  final String otVillage = "0x0C00";// '-village
  final String otHamlet = "0x0F00"; //'-hamlet

  //Население и работа геокодера
      if((theCityInfo.origtype.equals(otCity)) || (theCityInfo.origtype.equals(otTown) ))
      {
        intNumberOfCities++;
        //Население
        if (theCityInfo.population==-1 )
        {
          theCityInfo.populationMissing=true;
        }
        else
        {
          theCityInfo.populationMissing=false;
        }

При том, что по информации из справочного файла “СЕМЬ ДОРОГ” РЕКОМЕНДАЦИИ ПО ПОДГОТОВКЕ КАРТ - Navikey

https://www.google.ru/url?sa=t&rct=j&q=&esrc=s&source=web&cd=1&cad=rja&uact=8&ved=2ahUKEwiMoYXfz7DgAhUz4aYKHT4WCS4QFjAAegQIBxAC&url=http%3A%2F%2Fwww.navikey.ru%2Ffiles%2F7w%2F7w_MapsCooking_Manual.pdf&usg=AOvVaw1G7tY6xSHl-hMGyocswDMw

Типы объектов

Мегаполис (свыше 10 млн.) 0x0100
Мегаполис (5-10 млн.) 0x0200
Крупный город (2-5 млн.) 0x0300
Крупный город (1-2 млн.) 0x0400
Крупный город (0.5-1 млн.) 0x0500
Город (200-500 тыс.) 0x0600
Город (100-200 тыс.) 0x0700
Город (50-100 тыс.) 0x0800
Город (20-50 тыс.) 0x0900
Город (10-20 тыс.) 0x0A00
Населённый пункт (5-10 тыс.) 0x0B00
Населённый пункт (2-5 тыс.) 0x0C00
Населённый пункт (1-2 тыс.) 0x0D00
Поселок (500-1000) 0x0E00
Поселок (200-500) 0x0F00
Поселок (100-200) 0x1000
Поселок (менее 100) 0x1100

Таким, образом для городов с населением более 200 000 выдается ошибка.

Я пытался разбираться, в чем проблема с населением…
Если посмотреть тут osm2dcm/osm2dcm/osm2mp.config/cityguide-nodes.yml, то видно, что при конвертации из ОСМ в .МР все населенные пункты приводятся к значениям для валидатора:

- condition:
    - place = city
    - only_node
  action:
    - action: write_poi
      type: 0x0700
      level_h: 5
      city: yes
- condition:
    - place = town
    - only_node
  action:
    - action: write_poi
      type: 0x0a00
      level_h: 5
      city: yes
- condition:
    - place = village
    - only_node
  action:
    - action: write_poi
      type: 0x0C00
      level_h: 4
      city: yes
- condition:
    - place = hamlet
    - only_node
  action:
    - action: write_poi
      type: 0x0F00
      level_h: 2
      city: yes      

Кирилл использовал osm2mp v.0.90, который он еще и допиливал сам. Мне его вариант скрипта не удалось заставить работать, поэтому я использую более свежую версию в виде исполняемого файла, конфиги я максимально подогнал по те, что были у Кирилла.
Однако, ошибка определения населения у place=city все равно осталась. Возможно, он переносил population именно в osm2mp… Но в коде скрипта я разобраться не могу…
Кстати, пустые данные про дубликаты ребер тоже имеют такую же природу, эту инфу он вносил в .мр также своим модифицированным osm2mp.pl

В карте Узбекистана Ташкентская область дорога м39 неправильно вставлена скорость движения90 км.М39 максимальная скорость 70 км ч должен.Если можно исправте пожалуйста:)

ПСК Синара расположен в Челябинской области, но попадает в список http://peirce.gis-lab.info/qa/RU-SVE/addr/3 Свердловской области. Мичурино расположено в Тюменской области, но также попадает в список Свердловской. Можно ли поправить?

При конвертации данных ОСМ в карты учитываются следующие ограничения: maxspeed, если он не проставлен - то находится ли участок дороги в населенном пункте или нет, тогда ставится соответствующее ограничение скорости для этой страны.
Вы можете сами исправить неправильное ограничение скорости, например, проставив правильный maxspeed.

Я не нашел искомых населенных пунктов :), но постарался обрезать .poly Свердловской области так, чтобы не захватывалось лишнее. В следующий проход проверьте пожалуйста.

В какой программе показывает 90?
М39 где нет населнных пунктов - мксимальная скорость 90
Там где населенные пункты - надо из отразитть на карте, тогда появится ограничени 70

Добрый день! В валидаторе есть раздел “Сводка по городам”: http://peirce.gis-lab.info/qa/TJ-FULL#citiessummary
Если название города в теге name не совпадает с неким “названием по геокодеру”, то система считает это ошибкой при построении адресного поиска. По Узбекистану все города в порядке. По Туркменистану один город выпал. А по Таджикистану все города выходят невалидными.
Может кто-нибудь знает, что это за таинственный геокодер, который выдает странные названия городов и регионов, несовпадающие с официальными государственными справочниками стран? И почему автор валидатора решил сравнивать названия с этим таинственным геокодером, на который в описании к валидатору нет никаких ссылок?

Как работат с маxspeed

Здраствуйте. Я извиняюсь. Перепутал номер дороги.Не м39 макс скорость 90 км. а м34 мак скорость вне населенных пунктах должен 70 км

Карта NaviTel-9.7.2493.NAVITEL_G550_crk М 39 показывает макс скорость 70 км час.А в картах Ситигид 7.8 и 7 дорог дорогах М 34 показывает макс скорость 90 км в СГ , 100км в 7дорог.

Если кто сможет поправьте пожалуйста.Я не разбираюсь на этом.Заранее спасибо.Исправленные карты укажите откуда скачать пожалуйста.

Диёрбек,

Чтобы понять откуда проблема
NaviTel-9.7.2493.NAVITEL_G550_crk - это свежая версия навител, наши карты идут в формате nm2. Вы их спользуете? Если нет, то по проблеме скоростных ограничений надо обратится к издателю карт - навител, мы здесь не поможем.

Ситигид 7.8 и 7 дорог - какие карты вы испоьзуете для них?

Для 7Дорог попробуйте отсюда http://osm.extremal.uz/

по правилам - в Узбекистане вне населеных пунктах скорость ограничена в 90 км.ч, внутри населенных пунктах 70 км.ч (если нет дополнительных знаков)

Здраствуйте Marych.Карта Ситигид7.8 UZ FULL OSM v2.7 114 Мб, 7 дорог карта Uz.7w 202 мб.Я использую NaviTel-9.7.2493.NAVITEL_G550_crk карта uzbekistan.nm.2 35.7 mb.Я имел введу дорогу Ташкент Чиназ по старой и по бетонке.По старой дороге СГ 7.8 90 Км а 7 дорог 100 км ограничениe показывает должно вне населенных 70 а населнных.50 км.А в картах NaviTel-9.7.2493.NAVITEL_G550_crk по разному на каждой скаченной карте.Например по бетонке макс скорост 60 км показывает.

Нет в Узбекистане такого ограничения, где вы это взяли?
В населенных пунктах 70, если нет знаков
Вне населныых 90.

От этого и идет расстановка скоростных ограничений. Если есть знак ограниченя - его надо нанести на карту.

PS
И еще зависит он настроек конвертера, скоростные ограничения в Росси больше, кртами которыми вы пользуетесь конвертировались скорее всего на настройках для России.

Попробуйте вот отсюда карту - https://yadi.sk/d/Lh2-QPjK3a6Mh9

Спасибо попробую

В Свердловской области обнаружено 5 городов без населения (правда, рядом в строке стоит красный крест). Но я уже давно добавил необходимые сведения по этим городам. Что работает не так?