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

:confused: Хм. Тогда я наверно что не понимаю. Я тут приводил уже скриншоты у меня адреска работает только после mp2shp :(. Проект для МПС одинаков для обоих типов шейпов - после osm2mp и mp2shp

А в каком виде присылать? Сюда кидать, куда то слать. Или дадите возможность доступа к гитхабу на запись?

А пока первое предлагаемое изменение по пои

- condition:
    - or:
        - amenity = bus_station|bus_stop
   action:
    - action: write_poi
      type: 0xF001
      transport: yes
      contacts: yes

- condition:
    - or:
        - highway = bus_station|bus_stop
   action:
    - action: write_poi
      type: 0xF002
      transport: yes
      contacts: yes

- condition:
    - or:
        - railway = tram_stop
  action:
    - action: write_poi
      type: 0xF003
      transport: yes
      contacts: yes

И еще кусочек.

- condition:
    - amenity = kindergarten
  action:
    - action: write_poi
      type: 0xF501
      contacts: yes

- condition:
    - amenity = school
  action:
    - action: write_poi
      type: 0x2C05
      contacts: yes
      
- condition:
    - amenity = college
  action:
    - action: write_poi
      type: 0xF503
      contacts: yes
      
- condition:
    - amenity = university
  action:
    - action: write_poi
      type: 0xF504
      contacts: yes

Я понимаю что конфиги заточены больше под гармин. Но все таки типы пои хочется видеть разделенными

Лучше в виде пул-реквеста на гитхабе.
Только все типы должны быть совместимыми и с гармином, и с навителом

Я предпочитаю тип полиша с заголовком NG :slight_smile: для универсальности.
Ну и типы беру из мапедита с этим типом полиша

UPD. :frowning: Фиг вам. Не получится универсальность. Для навитела/7 дорог все таки сильно типы расширены, уже их гармин не поймет.
Может сделать отдельный дефолный конфиг для навитела/7дорог?

Одна проблема с адресный поиском.
В чем суть.
На примере Акмолинской области Казахстана.
В поиске-
Акмол (Акмолинская область Целиноградский район с.о. Акмол, Kazakhstan).
Просто населенный пункт. У этого объекта ннт ничего. Ни домов, ни улиц.

Акмол (Акмолинская область, Kazakhstan).
Этот же населенный пункт. Стоит в свойствах всего что в нем есть.

То есть один и тот же населенный пункт в поиске дважды :(.
Довольно таки напрягает.
По мне должно быть один нас.пункт- Акмол (Акмолинская область, Целиноградский район, Kazakhstan).
Я не думаю что сельские округа в поиске актуальны. А вот район у объектов должен быть.

Как это поправить в конфигах не соображу, ввиду нехватки опыта. Или здесь одними конфигами не отделаешься?

Проверь чтобы у полигона place и точки placе были одинаковые теги name и addr:*, скорее всего в каком-то из них отсутствует addr:subdistrict и они получают разные имена в полише.

Сельские округа очень выручают, когда в одном районе есть несколько населенных пунктов с одинаковым названием (Абай, например).

Заметил новые корректировки в lib/Coastlines.pm - Skip polygons (like islands) from the process of merging coastlines a…
Не поясните в двух словах.
Спасибо.

Исключил полигоны, состоящие из одного вея (читай острова) из расчета общего полигона воды по костлайнам и границам обрезки. Т.к. в ряде случаев пересечение такой линии с границей обрабатывается некорректно и водный полигон не формируется.

Если исключить острова из расчета, то проблемы не возникает (по крайней мере я таких случаев не нашел).

Для примера, Мурманск: если обрезать по границе области, как раз получим то самый вариант.

Прошу простить мой нигилизм, но не могу не спросить: в части fixing close nodes (testing)

  • начиная со строки 663 идет вставка большого корректирующего массива (воспринимается дилетантом как должное)
  • со строки 1262 is_close_nodes, на сколько я понял, тоже добавлен некий массивчик
  • но со строки 1280 fix_close_nodes и далее, идет штатный исходный массив
    Они слабо различимы по содержимому, если не сказать более - практически идентичны?!

На всякий случай прошу уточнить - всё ли здесь верно? Нет ли некой избыточности?
Спасибо.

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

del

Подскажите пожалуйста, какими таблицами транслитерации пользуется osm2mp при задании ключа --translit?
При транслитерации с азербайджанского в латиницу одна буковка превращается в “@”, что некрасиво на карте выглядит. Хотелось бы ее хотя бы в “а” превращать.
Заранее спасибо.

Это где-то тут
https://metacpan.org/source/SBURKE/Text-Unidecode-1.30/lib/Text/Unidecode/x01.pm

Почитал - ничерта не понял.
попробую по другому - где найти примеры файла, который требуется при задании ключа --ttable (–ttable= Имя файла дополнительной таблицы перекодировки (пример файла)
На вики ссылка на пример файла ведет в никуда…

Самое правильное будет сделать таблицу в формате GME, и использовать --lt-gme.
Можно заодно и им отправить.

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

liosha

А можешь исправить чтобы можно было в параллели несколько процессов с Я.Переводом собирать? SQL же это позволяет?


Processing nodes...
DBD::SQLite::db do failed: database is locked at C:/navitel/lib/SQLite_File.pm line 319.
DBD::SQLite::db do failed: database is locked at C:/navitel/lib/SQLite_File.pm line 319.
DBD::SQLite::db do failed: database is locked at C:/navitel/lib/SQLite_File.pm line 319.


yatr: failed request zh-en for 4хП╖хо┐шИНце╝ at C:/navitel/lib/LangTransform/YaTranslate.pm line 109.
Wide character in warn at C:/navitel/lib/LangTransform/YaTranslate.pm line 109.
yatr: failed request zh-en for 4хП╖хо┐шИНце╝ at C:/navitel/lib/LangTransform/YaTranslate.pm line 109.
yatr: failed request zh-en for Border Mongolia - China at C:/navitel/lib/LangTransform/YaTranslate.pm line 109.
yatr: failed request zh-en for Wukui Expressway at C:/navitel/lib/LangTransform/YaTranslate.pm line 109.
Wide character in warn at C:/navitel/lib/LangTransform/YaTranslate.pm line 109.
yatr: failed request zh-en for чЯ│ц▓│хнРхНлчФЯхнжцаб at C:/navitel/lib/LangTransform/YaTranslate.pm line 109.
Wide character in warn at C:/navitel/lib/LangTransform/YaTranslate.pm line 109.
yatr: failed request zh-en for чЯ│ц▓│хнРхНлчФЯхнжцаб at C:/navitel/lib/LangTransform/YaTranslate.pm line 109.
Wide character in warn at C:/navitel/lib/LangTransform/YaTranslate.pm line 109.

Теоретически да, но тогда сильно просядет скорость, потому что отключится всё кеширование.
Проще для каждого потока использовать отдельный кеш, см --lt-yatr-cache-dir

И чего ему надобно?
Сделал файл AZ.yml

#### test

--- Azerbaijan
---

Ə: A
ə: a

запускаю с ключами --translit --ttable=AZ.yml
он ругаецца:

Loading configuration...
YAML Error: Expected separator '---'
   Code: YAML_PARSE_ERR_NO_SEPARATOR
   Line: 1
   Document: 2
 at YAML/Loader.pm line 81.

— должен быть до комментария