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

Ссылки Число рутин­говых подгра­фов выдают пустую страницу.

Обновилось содержимое таблицы, однако все выше перечисленные косяки остались. Ценность валидатора падает, так как невозможно напрямую посмотреть нестыковки и исправить их. Я надеялся на внимание к отзывам, однако ничего не изменилось…:frowning:

Разобрались, но ответ неутешительный.

Этот валидатор был написан в далеком 2011 году, и использовал библиотеку Web Maps Lite от CloudMade, причем джаваскрипт загружался непосредственно с сайта клаудмеда.

но в какой-то момент кладумейд перепрофилировался и отключил библиотеку. Удивительно, что это так долго работало!

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

Хотя код там элементарный: прочесть из xml маркеры и показать их на карте.

ИМХО, как-то некрасиво получилось с этим валидатором - одним из самых удобных инструментов для поддержания карты в нормальном состоянии. В один прекрасный момент ты просто его забросил и отстранился от разработки. Может стоит вернуть ему полную работоспособность, сделать документацию и передать код сообществу? Если нужны деньги - организуй сбор, благо уже был положительный опыт. А так уже сколько лет валидатор по сути не работает.

Ну ты и лентяй, давай делай документацию бегом и деньги собери, а то мы ждать устали.

Вы, что, всё ещё верите с добрую фею в мире опенсорса?

Не думаю, что я давал присягу вести эту разработку до конца жизни.
А если бы Zkir не сменил сферу интересов, а например умер? Так и сказали бы, как он посмел, такой негодяй?

дык, код сообществу я давно передал:
https://github.com/Zkir/osm2dcm/tree/master/peirce.ru

Как еще передать?:stuck_out_tongue:

Однако за поддержку валидатора взялся Контур, который не программист ни разу. Может сообщество ему поможет? :wink:

В том то и прикол, что верят, потому что такая фея была – ваш покорный слуга.
Всё никак забыть не могут. Это приятно конечно.

хм,
http://peirce.gis-lab.info/qa/RU-AST/addr-street-map работает, потому что его (qq-map.php) на лифлет таки переписали. Так что всё в руках сообщества.

Кирилл, а разве кроме тебя еще кто-нибудь сайтом занимался?

Наверно, кто-то прислал патч, и я его вставил.


одну проблему я починил, частично.

http://peirce.gis-lab.info/qa/RU-KR/routing-map (routing-map.php). Он уже был переписан на лифлет, там проблема сейчас в другом: php, который установлен на сайт гислаба, не находит функцию mb_strtolower, и падало на этой строчке (поэтому была пустая страница)

я пока эту строчку закомментировал, что [сообществу] дальше делать , не знаю. Может искать какой к php подключить модуль, или какую версию php инсталлировать.

Короче, кто-то должен сделать патч для addr-map.php и addr-map.js.
Весь код на гитхабе.

Почему “частично”? Я потыркался - все работает, и josm открывается, и изоляты показываются.

Спасибо!

Не совсем :frowning: Так и не работает Доля битых адресов Дома) “Ошибка выполнения: ReferenceError: CM is not defined”. Остальное заработало, спасибо.

Новичок не разобрался для чего нужен валидатор, вместо исправления данных просто удаляет изоляты.
https://www.openstreetmap.org/changeset/64439697

Соединять дороги ? Не, не умеем. Главное чтобы валидатор не ругался ))

Zkir, приветствую.
Почему валидатор ругается на “Города без населения”, в которых есть тег population?
Могу ещё предположить, что это может быть вызвано наличием тега population:date,
или из-за того, что на точке больше полсотни других тегов.

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 км ч должен.Если можно исправте пожалуйста:)