Выложено обновление версии программы под все системы.
Актуальная версия 1.82.1308.

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

Увеличен интервал "отвала" GPS до 15 секунд
Значение вынесено в settings.xml (без доступа из настроек)
При отключенной галочке "сглаживать вращение" карта ориентируется без отклонения угла
Исправлено "мерцание" экрана на iOS
Множество мелких исправлений

Ссылки для скачивания:
Android APK:
https://navikey.ru/files/7w/7ways-1308/7ways.apk

Linux:
https://navikey.ru/files/7w/7ways-1308/7ways-linux-rpi-arm.zip
https://navikey.ru/files/7w/7ways-1308/7ways-linux-ubuntu-bionic-x86_64.zip
https://navikey.ru/files/7w/7ways-1308/7ways-linux-ubuntu-bionic-x86.zip
https://navikey.ru/files/7w/7ways-1308/7ways-linux-ubuntu-xenial-x86_64.zip
https://navikey.ru/files/7w/7ways-1308/7ways-linux-ubuntu-xenial-x86.zip

Windows CE:
https://navikey.ru/files/7w/7ways-1308/7ways-win-ce-arm.zip
https://navikey.ru/files/7w/7ways-1308/7ways-win-ce-mips.zip
https://navikey.ru/files/7w/7ways-1308/7ways-win-ce-sh4.zip

Windows NT:
https://navikey.ru/files/7w/7ways-1308/7ways-win-nt-x86_64.zip
https://navikey.ru/files/7w/7ways-1308/7ways-win-nt-x86.zip
Группа в Telegram (https://t.me/navikey)
Поддержка пользователей и общение.

Также запущена поддержка пользователей в Telegram (https://t.me/navikey_support_bot)
Запущен новостной блог http://blog.navikey.org/
В блоге публикуются сообщения о текущих работах и планах.
Доступна RSS подписка на новости.

Гондурас головного мозга

Ищу автора карты Гондураса, для 7 Вэйз, залитой на Мегамапс)))
Предположительно некто "isusanin" - Но это не точно. Может быть, у него есть??? платная версия карты Гондураса с нормальным поиском по улицам?
При прямом экспорте из ОСМ файла через osm2mp - в виде камментов к объектам сохраняется такая конструкция (к полигонам и точкам)
---
; WayID = 877545332
; building = yes
[POLYGON]
Type=0x13
CountryName=Honduras
RegionName=Francisco Morazan
CityName=TEGUCIGALPA
Data0=(14.07880,-87.19890),(14.07872,-87.19896),(14.07870,-87.19893),(14.07877,-87.19887)
[END]
----
Что позволяет, при отсутствии нумерации домов, после компиляции конвертером для 7вэйз получить карту с работающим поиском по именам улиц.
----
Проблемы при этом две: Во первых, при экспорте osm2mp слетает привязка полилиний, полигонов и точек к населенным пунктам - ее нужно делать вручную. Ну это пол-беды.
Во вторых, огромное количество дублированных линий - одна улица наложена на другую, что создает ложные перекрестки, да и вообще куча ошибок, (типа слишком близко расположенных точек, дублей узлов и т.д.) которые нужно править вручную, а это месяц работы в Мапэдите минимум. Все ж таки Гондурас - это не Сан Марино, большая довольно таки страна.
---
При попытке экспорта из ОСМ в польский формат из Глобал Маппера - отсутствует привязка объектов к дорогам, отсутствует привязка объектов к населенным пунктам, и миллионы несвязанных тупиков (несоединенных дорог) там, где должны быть перекрестки.

Комментарии

  • isusanin - это внутреннее название формата наших карт :smile:
  • botanegg написал: »
    isusanin - это внутреннее название формата наших карт :smile:

    Это мило))) А как то найти автора сборки Гондураса? Или помочь особо умным советом?
  • https://disk.yandex.ru/d/lWveNGhhFUkt9w
    Пробуйте это вариант.
    Что сделано - добавлен полигон place=city для Tegucigalpa.
    Что это изменило - появилось больше улиц, улицы стали отображаться на карте.

    P/S/ только в Tegucigalpa!
  • 7380c0dc1f7a.jpg
    Это и есть полигон города.
  • =Пробуйте это вариант.
    Что сделано - добавлен полигон place=city для Tegucigalpa.
    Что это изменило - появилось больше улиц, улицы стали отображаться на карте.
    P/S/ только в Tegucigalpa!

    Сердечно благодарю. То есть ??? Правильно ли я понимаю, что Вы в мапэдите ПРОСТО ДОБАВИЛИ ПОЛИГОН ГОРОДА - и начал работать поиск по улицам?

    Я провери, все ок, в Тегусигальпе - работает ок.

  • Это можно сделать в OSM - уровень исходника (нужна точность вносимых данных, иначе могут забраковать).
    Это можно сделать в JOSM - уровень формата *.osm (рисуем приблизительно для себя).
    Это можно сделать в GME - уровень формата *.mp (рисунок не требует точности для себя).

    И всё же у городов есть границы. Их правильнее соблюдать:
    Типы городов - place=city|town|village|hamlet|...
    https://wiki.openstreetmap.org/wiki/RU:Key:place
  • В Доминикане это тоже надо сделать.
  • White_54 написал: »
    Что сделано - добавлен полигон place=city для Tegucigalpa.
    В Мапэдите есть ТОЛЬКО городская застройка тип например
    Городcкая застройка (<200 тыс.ж) (0x2, полигон)
    Там нет такого типа PLACE - CITY

  • White_54 написал: »
    В Доминикане это тоже надо сделать.

    А наши карты Доминиканы и так норм работают с поиском по улицам ок)))
  • White_54 попробовал в Мапэдите полигон "городская застройка" - после компиляции - увы, не работает (((
  • White_54, позволяет ли JOSM как то автоматом упорядочить улицы? При прямом экпорте файла ОСМ через osm2mp - половина улиц и дорог получаются ДВУХСЛОЙНЫЕ - т.е. поверху идет одна дорога, под ней - какая нибудь дорога ниже классом, например, грунтовка (((
  • Рисовать лучше в базе OSM - это для всех и на все времена!
    Я не рисую в GME. Не могу точно подсказать.
    (<200 тыс.ж) (0x2, полигон)
    (>200 тыс.ж) (0x1, полигон)
    (сельский) (0х3)
    И в свойствах там наверное можно править PLACE.
  • Надо идти на форум OSM, JOSM, GME... Я мало правлю. Я плохой советчик.
    https://forum.openstreetmap.org/index.php
    https://forum.openstreetmap.org/viewtopic.php?id=2714
    https://yandex.ru/search/?text=GPSMmapEdit+forum&lr=118809
  • White_54, все равно сапасибо огромное))) JOSM на наших ноутбуках еле шевелится с такими большими картами )))
  • White_54 - а чем Вы конвертите из ОСМ в 7 вэйз? Минуя польский формат???
  • Из *.pbf в *.osm
    https://wiki.openstreetmap.org/wiki/RU:Osmconvert
    Из *.osm в *,mp
    https://wiki.openstreetmap.org/wiki/RU:Osm2mp
    Bp *.mp в *.7w
    7ways converter 1.31.192
  • Посмотрель я внимательно Вашу карту - ЗАГЛЯДЕНЬЕ))) Если не затруднит - поделитесь плиз конфигами, с которыми Вы это делаете))) Просто я тут вижу вот в этой ветке https://navikey.ru/vanilla/discussion/11/obsuzhdenie-konvertera-kart-programmy-sem-dorog/p11 - Вы капитально разобрались с настройками конвертации из ОСМ в польский
  • Создаём полигон для Tegucigalpa. Вот и вся конфигурация.
    Я поступил просто - добавить place=city в:
    https://www.openstreetmap.org/relation/3850824
    Это конечно очень грубо, но быстро и эффективно.

    Делал я это в JOSM. Образно говоря = без ущерба для базы OSM.
  • Если что то не получится. Пойдём дальше.
  • Обрабатывайте не всю страну разом, а по регионам - департаментам: (будет легче ноутбуку)
    Отношение Atlántida (4627386) в роли subarea
    Отношение Choluteca (4627314) в роли subarea
    Отношение Colón (4627315) в роли subarea
    Отношение Copán (4627388) в роли subarea
    Отношение Cortés (4627389) в роли subarea
    Отношение El Paraíso (4627316) в роли subarea
    Отношение Francisco Morazán (4627390) в роли subarea
    Отношение Gracias a Dios (3811537) в роли subarea
    Отношение Intibucá (4627391) в роли subarea
    Отношение Bay Islands (4625745) в роли subarea
    Отношение La Paz (4627392) в роли subarea
    Отношение Lempira (4627393) в роли subarea
    Отношение Ocotepeque (4627394) в роли subarea
    Отношение Olancho (4627317) в роли subarea
    Отношение Santa Bárbara (4627395) в роли subarea
    Отношение Valle (4627318) в роли subarea
    Отношение Yoro (4627396) в роли subarea
    Отношение Comayagua (12113927) в роли subarea
  • White_54 написал: »
    Это конечно очень грубо, но быстро и эффективно.
    Сорри, неясно выразился. Я не совсем об этом. Я о osm2mp - во первых, у меня почему то работает только экспорт для Гармина. Запускается только ЭТОТ батник: osm2mpGarmin64.bat


  • White_54 - собсно, нужен батник и правильный конфиг для Навикей.
  • White_54
    С городами и областями - более или менее понятно. Вопрос в экспорте (конвертации) из OSM в MP - при конвертации со стандартными конфигами (работает только для гармина (почему то)) - образуется дикое количество наkоженных друг на друга дорог - т.е. линия поверх линии, и это вручную чистить - ну ересь. В Вашей карте я посмотрели - дороги выстроены идеально.
  • В обшем при попытке запуска он грузит конфиг, и сообщает
    Loading configuration...
    Unknown condition: only_rel at script/osm2mp.pl pn line 163.
    - и на этом затыкается.
    Что я делаю не так? Хыхыхы
    Ясно, что Вы конвертируете ПРАВИЛЬНО - и с какими-то конфигами верными.
  • При этом при запуске Гармин батника - все работает, но страшенный ужАс с дорогами.
    А то что размечать нас. пункты вручную - это очевидно. Гондурас ведь )))
  • отредактировано 20 Sep
    =Батник Гондурас под Linux подобные=
    date
    echo "     | Получение исходных карт PBF"
    wget -P MAPS/HN/PBF -N -F http://download.geofabrik.de/central-america/honduras-latest.osm.pbf
    
    date
    echo "     | Получение границ POLY"
    perl getbound/getbound.pl 287670 -o MAPS/HN/POLY/HN.poly -api osm -onering
    
    date
    echo "     | Преобразование PBF в OSM  --emulate-osmosis "
    osm2mp/osmconvert MAPS/HN/PBF/honduras-latest.osm.pbf -B=MAPS/HN/POLY/HN.poly --verbose --drop-author --emulate-osmosis --complete-ways --complete-multipolygons --complete-boundaries -o=MAPS/HN/OSM/HN.osm
    
    date; echo "  -------   | Получение Польского формата -----------"
    perl osm2mp/osm2mp.pl --config=osm2mp/cfg-navitel/navitel-hn.cfg --bpoly=MAPS/HN/POLY/HN.poly --default-country="HN" --mapname="HN" --output=MAPS/HN/MP/HN.mp MAPS/HN/OSM/HN.osm
    
    date
    echo "     | Преобразование в формат 7ways"
    cd 7WaysConvC/
    ./converter32 config_HNpl_layers.cfg
    date
    
    sleep 3m
    
  • отредактировано 19 Oct
    = navitel-hn.cfg =
    ####
    ####    Navitel settings for russian
    ####
    ####
    
    
    [Writer]
    
    #  writer module
    module: WriterTT
    
    #  templates
    templates_file: output-polish.yml
    
    #  character encoding
    codepage: 65001
    
    # header value
    header: Routing=Y
    header: TypeSet=Navitel
    
    
    
    [Flags]
    
    #  create routing graph
    routing: 1
    
    #  use oneway tag (disable for pedestrian routing)
    oneway: 1
    
    #  merge same roads
    merge_roads: 1
    
    #  split long and self-intersecting ways
    split_roads: 1
    
    #  enlarge distance between too close nodes
    fix_close_nodes: 1
    
    #  create turn restrictions on barrier nodes
    barriers: 1
    
    #  create turn restrictions to disable parazite u-turns (on nodes with 2 links)
    disable_u_turns: 1
    
    #  process destination signs
    dest_signs: 1
    
    #  shield signs with road numbers
    road_shields: 1
    
    #  write route refs on bus stops
    transport_stops: 1
    
    #  use street relations for addressing
    street_relations: 1
    
    #  navitel-style 3D interchanges
    interchange_3d: 1
    
    #  create background object if defined map boundary
    background: 1
    
    #  clip polygons to map boundary
    clip_areas: 1
    
    #  create sea areas from coastlines
    shorelines: 1
    
    #  process marine-specific data (buoys, lights)
    marine: 1
    
    #  use city polygons for addressing
    addressing: 1
    
    #  write addresses for house polygons
    navitel: 1
    
    #  write contact info for POIs
    poi_contacts: 1
    
    #  use building outlines for POI addressing
    addr_from_poly: 1
    
    #  create POIs for polygons
    make_poi: 1
    
    #  create address points for interpolation lines
    addr_interpolation: 1
    
    
    
    [Values]
    
    #  maximum angle between roads to merge (cosine)
    merge_cos: 0.2
    
    #  minimum allowed routing segment distance, in meters
    #  (set 5.5 for cgpsmapper 0097 and earlier)
    fix_close_dist: 3.0
    
    #  maximum allowed road nodes
    max_road_nodes: 60
    
    # !!!!! desired map language !!!!! 
    target_lang: es
    
    # !!!!! source language for default tags !!!!!
    default_lang: es
    
    
    [Load]
    
    #  settings
    settings: settings-navitel.yml
    settings: rename-country.yml
    settings: rename-region.yml
    settings: addressing.yml
    
    #  features config
    features: preload-areas.yml
    
    features: polish-mp/nodes-navitel.yml
    
    features: polish-mp/ways-lines-navitel.yml
    
    features: polish-mp/ways-areas-navitel.yml
    
    features: polish-mp/ways-roads-navitel.yml
    
  • = output-polish.yml =
    ####    MP output templates
    
    
    --- output
    ---
    
    
    comment: |
      [% FOREACH line IN text.split('\n'); "; "; line | mp_filter; "\n"; END -%]
    
    
    info: |
      [% INCLUDE comment  text = text; "\n" -%]
    
    
    section: |
      [% "\n\n"; INCLUDE comment  text = text; "\n\n" -%]
    
    
    header: |
      [IMG ID]
      ID=[% opts.exists('ID') ? opts.ID : '88888888'; opts.delete('ID') %]
      Name=[% opts.exists('Name') ? opts.Name : 'OSM-based map' | mp_filter; opts.delete('Name') %]
      [% USE date -%]
      Copyright=Data from OpenStreetMap project under ODbL|Converted with osm2mp [% version %] at [% date.format(format='%Y-%m-%d %H:%M:%S') %]
     
      LblCoding=9
      CodePage=[% opts.exists('CodePage') ? opts.CodePage : '65001'; opts.delete('CodePage') %]
      
      Levels=6
      Level0=26
      LevelRange0=24
      Level1=26
      LevelRange1=22
      Level2=22
      LevelRange2=20
      Level3=20
      LevelRange3=18
      Level4=18
      LevelRange4=16
      Level5=15
      LevelRange5=14
    
      [% # keys with default values
        defs = {
            POINumberFirst='N'
            MG='Y'
            POIIndex='Y'
            Routing='N'
            Elevation='M'
            Preprocess='F'
            TreSize='3000'
        }; 
        FOREACH key IN defs.keys -%]
      [% key %]=[% opts.exists(key) ? opts.$key : defs.$key; opts.delete(key) %]
      [% END %]
    
      [% # keys without default values
        FOREACH key IN opts.keys -%]
      [% key %]=[% opts.$key | mp_filter %]
      [% END %]
    
      [END-IMG ID]
    
      [% %]
    
    
    
    footer: |
      [%- "\n\n" -%]
      [% INCLUDE comment
          text = "###  That's all, folks!"
       %]
    
    
    _common_fields: |
      [% IF data.level_h && data.level_h > (data.level_l || 0) -%]
      EndLevel=[% data.level_h %]
      [% END -%]
      Type=[% data.type %]
      [% label = data.name;
      IF data.extra_fields.exists('Label');
          label = data.extra_fields.Label;
          data.extra_fields.delete('Label');
      END;
      IF data.refs && data.road_ref;
          label = data.road_ref _ data.refs.sort.unique.join('-') _ ( label ? ' ' _ label : '' );
      END;
      IF label.defined -%]
      Label=[% label | mp_filter %]
      [% END -%]
      [% FOREACH key IN data.extra_fields.keys.sort -%]
      [% key %]=[% data.extra_fields.$key | mp_filter %]
      [% END -%]
    
    
    
    point: |
      [% INCLUDE comment  text = data.comment  IF data.comment -%]
      [POI]
      Data[% data.level_l || 0 %]=([% data.coords.1 %],[% data.coords.0 %])
      [% INCLUDE _common_fields data = data -%]
      [END]
      [% %]
    
    
    
    polygon: |
      [% INCLUDE comment  text = data.comment  IF data.comment -%]
      [POLYGON]
      [% FOREACH contour IN data.contours;
          latlons = [];
          FOREACH point IN contour; 
            latlons.push( point.1 _ ',' _ point.0 );
          END -%]
      Data[% data.level_l || 0 %]=([% latlons.join('),(') %])
      [% END -%]
      [% INCLUDE _common_fields data = data -%]
      [% FOREACH e IN data.entrance -%]
      EntryPoint=([% e.0.1 %],[% e.0.0 %]),[% e.1 %]
      [% END -%]
      [END]
      [% %]
    
    
    
    polyline: |
      [% INCLUDE comment  text = data.comment  IF data.comment -%]
      [POLYLINE]
      [% latlons = [];
        FOREACH point IN data.chain; 
          latlons.push( point.1 _ ',' _ point.0 );
        END -%]
      Data[% data.level_l || 0 %]=([% latlons.join('),(') %])
      [% INCLUDE _common_fields data = data -%]
      [END]
      [% %]
    
    
    road: |
      [% INCLUDE comment  text = data.comment  IF data.comment -%]
      [POLYLINE]
      [% latlons = [];
      FOREACH point IN data.chain;
      latlons.push( point.1 _ ',' _ point.0 );
      END -%]
      Data0=([% latlons.join('),(') %])
      RoadID=[% data.road_id %]
      [% IF data.oneway -%]
      DirIndicator=1
      [% END -%]
      RouteParams=[% speed_code(data.speed) %],[% data.road_class %],[% data.oneway || 0 %],[% data.toll || 0 %],[% data.access_flags %]
      [% INCLUDE _common_fields data = data -%]
      [% nodcount = 0; FOREACH nod IN data.nod -%]
      Nod[% nodcount %]=[% nod.0 %],[% nod.1 %],[% nod.2 || 0 %]
      [% nodcount = nodcount + 1; END -%]
      [END]
      [% %]
    
    
    
    turn_restriction: |
      [% INCLUDE comment  text = comment  IF comment -%]
      [Restrict]
      TraffPoints=[% opts.node_from %],[% opts.node_via %],[% opts.node_to %]
      TraffRoads=[% opts.road_from %],[% opts.road_to %]
      [% IF opts.param -%]
      RestrParam=[% opts.param %]
      [% END -%]
      [END-Restrict]
      [% %]
    
    
    
    destination_sign: |
      [% INCLUDE comment  text = comment  IF comment -%]
      [Sign]
      SignPoints=[% opts.node_from %],[% opts.node_via %],[% opts.node_to %]
      SignRoads=[% opts.road_from %],[% opts.road_to %]
      [% IF opts.param -%]
      SignParam=[% opts.param %]
      [% END -%]
      [END-Sign]
      [% %]
    
    
  • = settings-navitel.yml =
    ################################
    ##  Name selection priority
    ################################
    
    
    --- taglist
    ---
    
    label:          [ name, loc_name, nat_name, int_name, brand, operator ]
    ref:            [ ref, loc_ref ]
    oldref:         [ old_ref ]
    entrance:       [ name, ref ]
    place:          [ place_name, name ]
    street:         [ 'addr:street', addr:place, addr:quarter, name ]
    suburb:         [ addr:suburb ]
    destination:    [ destination, label, name ]
    house:          [ 'addr:housename', 'addr:housenumber' ]
    note:           [ note ]
    opening_hours:  [ opening_hours ]
    maxheight:      [ maxheight ]
    maxweight:      [ maxweight ]
    street2:        [ 'addr2:street', 'addr:street2', 'addr:street' ]
    house2:         [ 'addr2:housenumber', 'addr:housenumber2', 'addr:housenumber' ]
    
    phone:          [ 'contact:phone', phone ]
    website:        [ 'contact:website', website, url ]
    email:          [ 'contact:email', email ]
    fax:            [ 'contact:fax', fax ]
    
    
    ################################
    ##  Field presets
    ################################
    
    --- presets
    ---
    contacts:
        Phone: %phone
        WebPage: %website
        Email: %email
        Fax: %fax
    
    building:
        Label: %house
        Floors: !!perl/code |-
          {
            my $tags = shift()->{tag};
            my $levels = extract_number($tags->{'building:levels'});
            return $levels  if $levels;
            $levels = int(extract_number($tags->{'building:height'} || $tags->{'height'} || 0) / 3);
            return $levels || undef;
          }
    
    road:
      RouteParamExt:
        selector: if
        condition:
          or:
            - highway = living_street
            - living_street = yes
            - access = customers|destination
            - vehicle = customers|destination
            - motor_vehicle = customers|destination
            - motorcar = customers|destination
        then: 1
    
      TrafficLanes: !!perl/code |-
        {
          my $tags = shift()->{tag};
          my $lt = extract_number($tags->{'lanes'}) // q{};
          my $lf = extract_number($tags->{'lanes:forward'}) // q{};
          my $lb = extract_number($tags->{'lanes:backward'}) // q{};
    
          if ( $lt ) {
              $lf = length $lb ? $lt-$lb : int($lt/2+0.5)  if !length $lf;
              $lb = length $lf ? $lt-$lf : int($lt/2)      if !length $lb;
          }
    
          return undef  if !length $lf || !length $lb || $lt<0 || $lb<0;
          return "$lf,0,0,$lb,0,0";
        }
    
      TurnLanes: !!perl/code |-
        {
          return shift()->{tag}->{'turn:lanes'};
        }
      TurnLanesForward: !!perl/code |-
        {
          return shift()->{tag}->{'turn:lanes:forward'};
        }
      TurnLanesBackward: !!perl/code |-
        {
          return shift()->{tag}->{'turn:lanes:backward'};
        }
    
      LegalSpeed:
        selector: if
        condition: maxspeed = \d.*
        then: %maxspeed
        else:
          selector: if
          condition: highway = motorway
          then: 110
          else:
            selector: if
            condition:
              or:
                - highway = living_street
                - living_street = yes
            then: 20
            else:
              selector: if
              condition: inside_city
              then: 60
              else: 90
    
    ################################
    ##  Tags to skip
    ################################
    
    
    --- skip_tags
    ---
    
    created_by:         1
    
    
    
    ################################
    ##  Tags for comment
    ################################
    
    
    --- comment
    ---
    
    abandoned:          1
    access:             1
    aerialway:          1
    aeroway:            1
    admin_level:        1
    amenity:            1
    area:               1
    barrier:            1
    boundary:           1
    bridge:             1
    building:           1
    burnt:              1
    capital:            1
    craft:              1
    crossing:           1
    denomination:       1
    footway:            1
    highway:            1
    historic:           1
    junction:           1
    layer:              1
    landuse:            1
    lanes:              1
    leisure:            1
    man_made:           1
    maxheight:          1
    maxspeed:           1
    maxweight:          1
    military:           1
    natural:            1
    office:             1
    oneway:             1
    place:              1
    population:         1
    power:              1
    railway:            1
    religion:           1
    route:              1
    service:            1
    shop:               1
    smoothness:         1
    sport:              1
    surface:            1
    tourism:            1
    tracktype:          1
    traffic_calming:    1
    tunnel:             1
    waterway:           1
    whitewater:         1
    
    
    
    ################################
    ##  Common types
    ################################
    
    
    --- types
    ---
    
    background:
        type:       0x4B
        level_h:    4
    
    sea:
        type:       0x28
        level_h:    4
    
    
    
    ################################
    ##  Access restrictions
    ################################
    
    
    --- yesno
    ---
    
    1:              1
    yes:            1
    true:           1
    designated:     1
    permissive:     1
    customers:      1
    
    0:              0
    no:             0
    false:          0
    private:        0
    restricted:     0
    very_horrible:  0
    impassable:     0
    
    
    
    ################################
    ##  Transport restrictions
    ################################
    
    # emergency, delivery, car, bus, taxi, foot, bike, truck
    
    --- transport
    ---
    
    - key:     motorroad
      val:     0,0,0,0,0,1,1,0
      mode:    -1
    
    - key:     access
      val:     1,1,1,1,1,1,1,1
    
    - key:     vehicle
      val:     1,1,1,1,1,0,1,1
    - key:     motor_vehicle
      val:     1,1,1,1,1,0,0,1
    
    - key:     motorcar
      val:     1,1,1,1,1,0,0,1
    
    - key:     foot
      val:     0,0,0,0,0,1,0,0
    - key:     bicycle
      val:     0,0,0,0,0,0,1,0
    - key:     psv
      val:     0,0,0,1,1,0,0,0
    - key:     bus
      val:     0,0,0,1,0,0,0,0
    - key:     taxi
      val:     0,0,0,0,1,0,0,0
    - key:     hgv
      val:     0,0,0,0,0,0,0,1
    - key:     goods
      val:     0,1,0,0,0,0,0,0
    - key:     emergency
      val:     1,0,0,0,0,0,0,0
    
    - key:     smoothness
      val:     1,1,1,1,1,0,0,1
    
    
    
    ################################
    ##  Barriers
    ################################
    
    # emergency, delivery, car, bus, taxi, foot, bike, truck
    # default: 1,1,1,1,1,1,1,1 - restricts all
    
    --- barrier
    ---
    
    block:          1,1,1,1,1,0,1,1
    stile:          1,1,1,1,1,0,1,1
    chain:          1,1,1,1,1,0,1,1
    bollard:        1,1,1,1,1,0,0,1
    bus_trap:       1,1,1,0,1,0,0,1
    toll_booth:     0,0,0,0,0,0,0,0
    cattle_grid:    0,0,0,0,0,0,0,0
    entrance:       0,0,0,0,0,0,0,0
    border_control: 0,0,0,0,0,0,0,0
    
  • = rename-country.yml =
    --- rename_country
    ---
    AD:
      en: Andorra
      ru: Андорра
    AE:
      en: United Arab Emirates
      ru: ОАЭ
    AF:
      en: Afghanistan
      ru: Афганистан
    AG:
      en: Antigua and Barbuda
      ru: Антигуа и Барбуда
    AI:
      en: Anguilla
      ru: Ангилья
    AL:
      en: Albania
      ru: Албания
    AM:
      en: Armenia
      ru: Армения
    AN:
      en: Netherlands Antilles
      ru: Нидерландские Антильские острова
    AO:
      en: Angola
      ru: Ангола
    AQ:
      en: Antarctica
      ru: Антарктида
    AR:
      en: Argentina
      ru: Аргентина
    AS:
      en: American Samoa
      ru: Американское Самоа
    AT:
      en: Austria
      ru: Австрия
    AU:
      en: Australia
      ru: Австралия
    AW:
      en: Aruba
      ru: Аруба
    AX:
      en: Aland Islands
      ru: Аландские острова
    AZ:
      en: Azerbaijan
      ru: Азербайджан
    BA:
      en: Bosnia and Herzegovina
      ru: Босния и Герцеговина
    BB:
      en: Barbados
      ru: Барбадос
    BD:
      en: Bangladesh
      ru: Бангладеш
    BE:
      en: Belgium
      ru: Бельгия
    BF:
      en: Burkina Faso
      ru: Буркина Фасо
    BG:
      en: Bulgaria
      ru: Болгария
    BH:
      en: Bahrain
      ru: Бахрейн
    BI:
      en: Burundi
      ru: Бурунди
    BJ:
      en: Benin
      ru: Бенин
    BL:
      en: Saint Barthelemy
      ru: Сен-Бартелеми
    BM:
      en: Bermuda
      ru: Бермуды
    BN:
      en: Brunei Darussalam
      ru: Бруней
    BO:
      en: Bolivia
      ru: Боливия
    BR:
      en: Brazil
      ru: Бразилия
    BS:
      en: Bahamas
      ru: Багамы
    BT:
      en: Bhutan
      ru: Бутан
    BV:
      en: Bouvet Island
      ru: Остров Буве
    BW:
      en: Botswana
      ru: Ботсвана
    BY:
      en: Belarus
      ru: Беларусь
    BZ:
      en: Belize
      ru: Белиз
    CA:
      en: Canada
      ru: Канада
    CC:
      en: Cocos (Keeling) Islands
      ru: Кокосовые острова
    CD:
      en: Congo DR
      ru: ДР Конго
    CF:
      en: Central African Republic
      ru: ЦАР
    CG:
      en: Congo
      ru: Республика Конго
    CH:
      en: Switzerland
      ru: Швейцария
    CI:
      en: Cote d'Ivoire
      ru: Кот-д’Ивуар
    CK:
      en: Cook Islands
      ru: Острова Кука
    CL:
      en: Chile
      ru: Чили
    CM:
      en: Cameroon
      ru: Камерун
    CN:
      en: China
      ru: КНР
    CO:
      en: Colombia
      ru: Колумбия
    CR:
      en: Costa Rica
      ru: Коста-Рика
    CU:
      en: Cuba
      ru: Куба
    CV:
      en: Cape Verde
      ru: Кабо-Верде
    CX:
      en: Christmas Island
      ru: Остров Рождества
    CY:
      en: Cyprus
      ru: Кипр
    CZ:
      en: Czech Republic
      ru: Чехия
    DE:
      en: Germany
      ru: Германия
    DJ:
      en: Djibouti
      ru: Джибути
    DK:
      en: Denmark
      ru: Дания
    DM:
      en: Dominica
      ru: Доминика
    DO:
      en: Dominican Republic
      ru: Доминиканская Республика
    DZ:
      en: Algeria
      ru: Алжир
    EC:
      en: Ecuador
      ru: Эквадор
    EE:
      en: Estonia
      ru: Эстония
    EG:
      en: Egypt
      ru: Египет
    EH:
      en: Western Sahara
      ru: Западная Сахара
    ER:
      en: Eritrea
      ru: Эритрея
    ES:
      en: Spain
      ru: Испания
    ET:
      en: Ethiopia
      ru: Эфиопия
    FI:
      en: Finland
      ru: Финляндия
    FJ:
      en: Fiji
      ru: Фиджи
    FK:
      en: Falkland Islands
      ru: Фолклендские острова
    FM:
      en: Micronesia
      ru: Микронезия
    FO:
      en: Faroe Islands
      ru: Фарерские острова
    FR:
      en: France
      ru: Франция
    GA:
      en: Gabon
      ru: Габон
    GB:
      en: United Kingdom
      ru: Великобритания
    GD:
      en: Grenada
      ru: Гренада
    GE:
      en: Georgia
      ru: Грузия
    GF:
      en: French Guiana
      ru: Французская Гвиана
    GG:
      en: Guernsey
      ru: Гернси
    GH:
      en: Ghana
      ru: Гана
    GI:
      en: Gibraltar
      ru: Гибралтар
    GL:
      en: Greenland
      ru: Гренландия
    GM:
      en: Gambia
      ru: Гамбия
    GN:
      en: Guinea
      ru: Гвинея
    GP:
      en: Guadeloupe
      ru: Гваделупа
    GQ:
      en: Equatorial Guinea
      ru: Экваториальная Гвинея
    GR:
      en: Greece
      ru: Греция
    GS:
      en: South Georgia and the South Sandwich Islands
      ru: Южная Георгия и Южные Сандвичевы острова
    GT:
      en: Guatemala
      ru: Гватемала
    GU:
      en: Guam
      ru: Гуам
    GW:
      en: Guinea-Bissau
      ru: Гвинея-Бисау
    GY:
      en: Guyana
      ru: Гайана
    HK:
      en: Hong Kong
      ru: Гонконг
    HM:
      en: Heard Island and McDonald Islands
      ru: Херд и Макдональд
    HN:
      en: Honduras
      ru: Гондурас
      es: Honduras
    
    HR:
      en: Croatia
      ru: Хорватия
    HT:
      en: Haiti
      ru: Гаити
    HU:
      en: Hungary
      ru: Венгрия
    ID:
      en: Indonesia
      ru: Индонезия
    IE:
      en: Ireland
      ru: Ирландия
    IL:
      en: Israel
      ru: Израиль
    IM:
      en: Isle of Man
      ru: Остров Мэн
    IN:
      en: India
      ru: Индия
    IO:
      en: British Indian Ocean Territory
      ru: Британская территория в Индийском океане
    IQ:
      en: Iraq
      ru: Ирак
    IR:
      en: Iran
      ru: Иран
    IS:
      en: Iceland
      ru: Исландия
    IT:
      en: Italy
      ru: Италия
    JE:
      en: Jersey
      ru: Джерси
    JM:
      en: Jamaica
      ru: Ямайка
    JO:
      en: Jordan
      ru: Иордания
    JP:
      en: Japan
      ru: Япония
    KE:
      en: Kenya
      ru: Кения
    KG:
      en: Kyrgyzstan
      ru: Киргизия
    KH:
      en: Cambodia
      ru: Камбоджа
    KI:
      en: Kiribati
      ru: Кирибати
    KM:
      en: Comoros
      ru: Коморы
    KN:
      en: Saint Kitts and Nevis
      ru: Сент-Китс и Невис
    KP:
      en: North Korea
      ru: КНДР
    KR:
      en: South Korea
      ru: Республика Корея
    KW:
      en: Kuwait
      ru: Кувейт
    KY:
      en: Cayman Islands
      ru: Каймановы острова
    KZ:
      en: Kazakhstan
      ru: Казахстан
    LA:
      en: Lao
      ru: Лаос
    LB:
      en: Lebanon
      ru: Ливан
    LC:
      en: Saint Lucia
      ru: Сент-Люсия
    LI:
      en: Liechtenstein
      ru: Лихтенштейн
    LK:
      en: Sri Lanka
      ru: Шри-Ланка
    LR:
      en: Liberia
      ru: Либерия
    LS:
      en: Lesotho
      ru: Лесото
    LT:
      en: Lithuania
      ru: Литва
    LU:
      en: Luxembourg
      ru: Люксембург
    LV:
      en: Latvia
      ru: Латвия
    LY:
      en: Libya
      ru: Ливия
    MA:
      en: Morocco
      ru: Марокко
    MC:
      en: Monaco
      ru: Монако
    MD:
      en: Moldova
      ru: Молдавия
    ME:
      en: Montenegro
      ru: Черногория
    MF:
      en: Saint Martin
      ru: Сен-Мартен
    MG:
      en: Madagascar
      ru: Мадагаскар
    MH:
      en: Marshall Islands
      ru: Маршалловы Острова
    MK:
      en: Macedonia
      ru: Македония
    ML:
      en: Mali
      ru: Мали
    MM:
      en: Myanmar
      ru: Мьянма
    MN:
      en: Mongolia
      ru: Монголия
    MO:
      en: Macao
      ru: Аомынь
    MP:
      en: Northern Mariana Islands
      ru: Северные Марианские острова
    MQ:
      en: Martinique
      ru: Мартиника
    MR:
      en: Mauritania
      ru: Мавритания
    MS:
      en: Montserrat
      ru: Монтсеррат
    MT:
      en: Malta
      ru: Мальта
    MU:
      en: Mauritius
      ru: Маврикий
    MV:
      en: Maldives
      ru: Мальдивы
    MW:
      en: Malawi
      ru: Малави
    MX:
      en: Mexico
      ru: Мексика
    MY:
      en: Malaysia
      ru: Малайзия
    MZ:
      en: Mozambique
      ru: Мозамбик
    NA:
      en: Namibia
      ru: Намибия
    NC:
      en: New Caledonia
      ru: Новая Каледония
    NE:
      en: Niger
      ru: Нигер
    NF:
      en: Norfolk Island
      ru: Остров Норфолк
    NG:
      en: Nigeria
      ru: Нигерия
    NI:
      en: Nicaragua
      ru: Никарагуа
    NL:
      en: Netherlands
      ru: Нидерланды
    NO:
      en: Norway
      ru: Норвегия
    NP:
      en: Nepal
      ru: Непал
    NR:
      en: Nauru
      ru: Науру
    NU:
      en: Niue
      ru: Ниуэ
    NZ:
      en: New Zealand
      ru: Новая Зеландия
    OM:
      en: Oman
      ru: Оман
    PA:
      en: Panama
      ru: Панама
    PE:
      en: Peru
      ru: Перу
    PF:
      en: French Polynesia
      ru: Французская Полинезия
    PG:
      en: Papua New Guinea
      ru: Папуа — Новая Гвинея
    PH:
      en: Philippines
      ru: Филиппины
    PK:
      en: Pakistan
      ru: Пакистан
    PL:
      en: Poland
      ru: Польша
    PM:
      en: Saint Pierre and Miquelon
      ru: Сен-Пьер и Микелон
    PN:
      en: Pitcairn
      ru: Острова Питкэрн
    PR:
      en: Puerto Rico
      ru: Пуэрто-Рико
    PS:
      en: Palestina
      ru: Палестина
    PT:
      en: Portugal
      ru: Португалия
    PW:
      en: Palau
      ru: Палау
    PY:
      en: Paraguay
      ru: Парагвай
    QA:
      en: Qatar
      ru: Катар
    RE:
      en: Reunion
      ru: Реюньон
    RO:
      en: Romania
      ru: Румыния
    RS:
      en: Serbia
      ru: Сербия
    RU:
      en: Russia
      ru: Россия
    RW:
      en: Rwanda
      ru: Руанда
    SA:
      en: Saudi Arabia
      ru: Саудовская Аравия
    SB:
      en: Solomon Islands
      ru: Соломоновы Острова
    SC:
      en: Seychelles
      ru: Сейшельские Острова
    SD:
      en: Sudan
      ru: Судан
    SE:
      en: Sweden
      ru: Швеция
    SG:
      en: Singapore
      ru: Сингапур
    SH:
      en: Saint Helena
      ru: Остров Святой Елены
    SI:
      en: Slovenia
      ru: Словения
    SJ:
      en: Svalbard and Jan Mayen
      ru: Шпицберген и Ян-Майен
    SK:
      en: Slovakia
      ru: Словакия
    SL:
      en: Sierra Leone
      ru: Сьерра-Леоне
    SM:
      en: San Marino
      ru: Сан-Марино
    SN:
      en: Senegal
      ru: Сенегал
    SO:
      en: Somalia
      ru: Сомали
    SR:
      en: Suriname
      ru: Суринам
    ST:
      en: Sao Tome and Principe
      ru: Сан-Томе и Принсипи
    SV:
      en: El Salvador
      ru: Сальвадор
    SY:
      en: Syria
      ru: Сирия
    SZ:
      en: Swaziland
      ru: Свазиленд
    TC:
      en: Turks and Caicos Islands
      ru: Тёркс и Кайкос
    TD:
      en: Chad
      ru: Чад
    TF:
      en: French Southern Territories
      ru: Французские Южные и Антарктические Территории
    TG:
      en: Togo
      ru: Того
    TH:
      en: Thailand
      ru: Таиланд
    TJ:
      en: Tajikistan
      ru: Таджикистан
    TK:
      en: Tokelau
      ru: Токелау
    TL:
      en: Timor-Leste
      ru: Восточный Тимор
    TM:
      en: Turkmenistan
      ru: Туркмения
    TN:
      en: Tunisia
      ru: Тунис
    TO:
      en: Tonga
      ru: Тонга
    TR:
      en: Turkey
      ru: Турция
    TT:
      en: Trinidad and Tobago
      ru: Тринидад и Тобаго
    TV:
      en: Tuvalu
      ru: Тувалу
    TW:
      en: Taiwan
      ru: Тайвань
    TZ:
      en: Tanzania
      ru: Танзания
    UA:
      en: Ukraine
      ru: Украина
    UG:
      en: Uganda
      ru: Уганда
    UM:
      en: US Minor Outlying Islands
      ru: Внешние малые острова (США)
    US:
      en: United States
      ru: США
    UY:
      en: Uruguay
      ru: Уругвай
    UZ:
      en: Uzbekistan
      ru: Узбекистан
    VA:
      en: Vatican
      ru: Ватикан
    VC:
      en: Saint Vincent and the Grenadines
      ru: Сент-Винсент и Гренадины
    VE:
      en: Venezuela
      ru: Венесуэла
    VG:
      en: 'Virgin Islands, British'
      ru: Британские Виргинские острова
    VI:
      en: 'Virgin Islands, U.S.'
      ru: Американские Виргинские острова
    VN:
      en: Viet Nam
      ru: Вьетнам
    VU:
      en: Vanuatu
      ru: Вануату
    WF:
      en: Wallis and Futuna
      ru: Уоллис и Футуна
    WS:
      en: Samoa
      ru: Самоа
    YE:
      en: Yemen
      ru: Йемен
    YT:
      en: Mayotte
      ru: Майотта
    ZA:
      en: South Africa
      ru: ЮАР
    ZM:
      en: Zambia
      ru: Замбия
    
  • = rename-region.yml =
    --- rename_region
    ---
    
    RU-AD:
      ru: Республика Адыгея
      en: Adygea Republic
    RU-BA:
      ru: Республика Башкортостан
      en: Bachkortostan Republic
    RU-AL: 
      ru: Республика Алтай
      en: Altai Republic
    RU-ALT: 
      ru: Алтайский край
      en: Altaisky krai
    RU-AMU:
      ru: Амурская область
      en: Amurskaya oblast
    RU-ARK:
      ru: Архангельская область
      en: Arkhangelskaya oblast
    RU-AST:
      ru: Астраханская область
      en: Astrakhanskaya oblast
    RU-BEL:
      ru: Белгородская область
      en: Belgorodskaya oblast
    RU-BRY:
      ru: Брянская область
      en: Bryanskaya oblast
    RU-BU:
      ru: Республика Бурятия
      en: Buryatia republic
    RU-CE:
      ru: Чеченская Республика
      en: Chechen republic
    RU-CHE:
      ru: Челябинская область
      en: Chelyabinskaya oblast
    RU-CHU:
      ru: Чукотский автономный округ
      en: Chukotkskiy Autonomous Region
    RU-CU:
      ru: Чувашская Республика
      en: Chuvashia republic
    RU-DA:
      ru: Республика Дагестан
      en: Dagestan republic
    RU-IN:
      ru: Республика Ингушетия
      en: Ingushetia republic
    RU-IRK:
      ru: Иркутская область
      en: Irkutskaya oblast
    RU-IVA:
      ru: Ивановская область
      en: Ivanovskaya oblast
    RU-KAM:
      ru: Камчатский край
      en: Kamchatskiy krai
    RU-KB:
      ru: Кабардино-Балкарская республика
      en: Kabardino-Balkarskaya republic
    RU-KC:
      ru: Карачаево-Черкесская республика
      en: Karachayevo-Cherkesskaya republic
    RU-KDA:
      ru: Краснодарский край
      en: Krasnodarskiy krai
    RU-KEM:
      ru: Кемеровская область
      en: Kemerovskaya oblast
    RU-KGD:
      ru: Калининградская область
      en: Kaliningradskaya oblast
    RU-KGN:
      ru: Курганская область
      en: Kurganskaya oblast
    RU-KHA:
      ru: Хабаровский край
      en: Khabarovskiy krai
    RU-KHM:
      en: Khanty-Mansiyskiy Autonomous Region
      ru: Ханты-Мансийский автономный округ - Югра
    RU-KIR:
      ru: Кировская область
      en: Kirovskaya oblast
    RU-KK:
      ru: Республика Хакасия
      en: Khakassia republic
    RU-KL:
      ru: Республика Калмыкия
      en: Kalmykia republic
    RU-KLU:
      ru: Калужская область
      en: Kaluzhskaya oblast
    RU-KO:
      ru: Республика Коми
      en: Komi republic
    RU-KOS:
      ru: Костромская область
      en: Kostromskaya oblast
    RU-KR:
      ru: Республика Карелия
      en: Karelia republic
    RU-KRS:
      ru: Курская область
      en: Kursk oblast
    RU-KYA:
      ru: Красноярский край
      en: Krasnoyarskiy krai
    RU-LEN:
      ru: Ленинградская область
      en: Leningradskaya oblast
    RU-LIP:
      ru: Липецкая область
      en: Lipetskaya oblast
    RU-MAG:
      ru: Магаданская область
      en: Magadan oblast
    RU-ME:
      ru: Республика Марий Эл
      en: Mari El republic
    RU-MO:
      ru: Республика Мордовия
      en: Mordovia republic
    RU-MOS:
      ru: Московская область
      en: Moscow oblast
    RU-MOW:
      ru: Москва
      en: Moscow
    RU-MUR:
      ru: Мурманская область
      en: Murmanskaya oblast
    RU-NEN:
      ru: Ненецкий автономный округ
      en: Nenetskiy Autonomous Region
    RU-NGR:
      ru: Новгородская область
      en: Novgorodskaya oblast
    RU-NIZ:
      ru: Нижегородская область
      en: Nizhegorodskaya oblast
    RU-NVS:
      ru: Новосибирская область
      en: Novosibirskaya oblast
    RU-OMS:
      ru: Омская область
      en: Omskaya oblast
    RU-ORE:
      ru: Оренбургская область
      en: Orenburgskaya oblast
    RU-ORL:
      ru: Орловская область
      en: Orlovskaya oblast
    RU-PER:
      ru: Пермский край
      en: Permskiy krai
    RU-PNZ:
      ru: Пензенская область
      en: Penzinskaya oblast
    RU-PRI:
      ru: Приморский край
      en: Primorskiy krai
    RU-PSK:
      ru: Псковская область
      en: Pskovskaya oblast
    RU-ROS:
      ru: Ростовская область
      en: Rostovskaya oblast
    RU-RYA:
      ru: Рязанская область
      en: Ryazanskaya oblast
    RU-SA:
      ru: Республика Саха (Якутия)
      en: Sakha (Yakutiya) republic
    RU-SAK:
      ru: Сахалинская область
      en: Sakhalinskaya oblast
    RU-SAM:
      ru: Самарская область
      en: Samarskaya oblast
    RU-SAR:
      ru: Саратовская область
      en: Saratovskaya oblast
    RU-SE:
      ru: Республика Северная Осетия-Алания
      en: North Ossetia-Alania republic
    RU-SMO:
      ru: Смоленская область
      en: Smolenskaya oblast
    RU-SPE:
      ru: Санкт-Петербург
      en: St.Petersburg
    RU-STA:
      ru: Ставропольский край
      en: Stavropolskiy krai
    RU-SVE:
      ru: Свердловская область
      en: Sverdlovskaya oblast
    RU-TA:
      ru: Республика Татарстан
      en: Tatarstan republic
    RU-TAM:
      ru: Тамбовская область
      en: Tambovskaya oblast
    RU-TOM:
      ru: Томская область
      en: Tomskaya oblast
    RU-TUL:
      ru: Тульская область
      en: Tulskaya oblast
    RU-TVE:
      ru: Тверская область
      en: Tverskaya oblast
    RU-TY:
      ru: Республика Тыва
      en: Tuva republic
    RU-TYU:
      ru: Тюменская область
      en: Tyumenskaya oblast
    RU-UD:
      ru: Удмуртская Республика
      en: Udmurtia republic
    RU-ULY:
      ru: Ульяновская область
      en: Ulyanovskaya oblast
    RU-VGG:
      ru: Волгоградская область
      en: Volgogradskaya oblast
    RU-VLA:
      ru: Владимирская область
      en: Vladimirskaya oblast
    RU-VLG:
      ru: Вологодская область
      en: Vologodskaya oblast
    RU-VOR:
      ru: Воронежская область
      en: Voronezhskaya oblast
    RU-YAN:
      ru: Ямало-Ненецкий автономный округ
      en: Yamalo-Nenetskiy Autonomous Region
    RU-YAR:
      ru: Ярославская область
      en: Yaroslavskaya oblast
    RU-YEV:
      ru: Еврейская автономная область
      en: Yevreyskaya Autonomous Region
    RU-ZAB:
      ru: Забайкальский край
      en: Zabaykalskiy Krai
    
    FI-01:
      ru: Аландские острова
      en: Åland
    FI-02:
      ru: Южная Карелия
      en: South Karelia
    FI-03:
      ru: Южная Остроботния
      en: Southern Ostrobothnia
    FI-04:
      ru: Южное Саво
      en: Southern Savonia
    FI-05:
      ru: Кайнуу
      en: Kainuu
    FI-06:
      ru: Канта-Хяме
      en: Tavastia Proper
    FI-07:
      ru: Центральная Остроботния
      en: Central Ostrobothnia
    FI-08:
      ru: Центральная Финляндия
      en: Central Finland
    FI-09:
      ru: Кюменлааксо
      en: Kymenlaakso
    FI-10:
      ru: Лапландия
      en: Lapland
    FI-11:
      ru: Пирканмаа
      en: Pirkanmaa
    FI-12:
      ru: Ostrobothnia
      en: Похьянмаа
    FI-13:
      ru: North Karelia
      en: Северная Карелия
    FI-14:
      ru: Северная Похьянмаа
      en: Northern Ostrobothnia
    FI-15:
      ru: Северное Саво
      en: Northern Savonia
    FI-16:
      ru: Пяйят-Хяме
      en: Päijänne Tavastia
    FI-17:
      ru: Сатакунта
      en: Satakunta
    FI-18:
      ru: Уусимаа
      en: Uusimaa
    FI-19:
      ru: Исконная Финляндия
      en: Finland Proper
    
  • = addressing.yml =
    ################################
    ##  Base addressing model
    ################################
    
    
    --- addr_prefixes
    ---
    - addr
    #- is_in
    
    
    --- addr_levels
    ---
    
    - level: country
      tags: [ country ]
      area_condition:
          and:
            - type = multipolygon|boundary
            - boundary = administrative
            - admin_level = 2
    
    - level: region
      tags: [ region, state ]
      area_condition:
          and:
            - type = multipolygon|boundary
            - boundary = administrative
            - admin_level = 4
    
    - level: district
      tags: [ district, county ]
    
    - level: subdistrict
      tags: [ subdistrict ]
    
    - level: city
      tags: [ city, town, hamlet ]
      area_condition: place = city|town|village|hamlet|allotments|isolated_dwelling
    
    - level: suburb
      tags: [ suburb ]
    
    - level: street
      tags: [ street ]
    # TODO relations: [ street, associatedStreet ]
    
    - level: quarter
      tags: [ quarter, neighbourhood ]
    
    - level: postcode
      tags: [ postcode ]
    
    - level: house
      tags: [ housenumber, housename ]
    
    - level: building
      tags: [ letter ]
    
    - level: entrance
      tags: [ entrance ]
    
    - level: office
      tags: [ office, apartment, flat ]
    
    
    
    
    # Common MP address levels
    # (country - region - city - street - housenumber)
    
    --- result_address
    ---
    
    country:
        - %country
    
    region:
        - %region %district
        - %region
        - %district
    
    city:
        - %city (%subdistrict)
        - %city
    
    street:
        - %street, %quarter (%suburb)
        - %street (%suburb)
        - %street, %quarter
        - %street
        - %quarter (%suburb)
        - %quarter
        - %suburb
        - %city
    
    house:
        - %house "%building"
        - %house
        - %building
    
    postcode:
        - %postcode
    
  • = preload-areas.yml =
    ################################
    ##  Areas
    ################################
    
    
    --- areas
    ---
    
    - condition:
        - landuse = *
      action:
        - action:       load_access_area
        
    - condition:
        - place = *
      action:
        - action:       load_cityside_area
    
  • = nodes-navitel.yml =
    --- nodes
    ---
    
    ##  Special nodes
    
    - condition:
        - only_node
        - barrier = *
      action:
        - action: load_barrier
    
    - condition:
        - only_node
        - garmin:extnode = 1|yes
      action:
        - action: force_external_node
    
    - condition:
        - only_node
        - or:
            - building = entrance
            - entrance = *
        - ref = *
      action:
        - action: load_building_entrance
          name: %entrance
    
    - condition:
        - only_node
        - entrance = main
      action:
        - action: load_main_entrance          
    
    # POIs
    
    - condition:
        - aerialway = station
      action:
        - action: write_poi
          type: 0xf009
          contacts: yes
    
    - condition:
        - aeroway = aerodrome
        - iata != *
      action:
        - action: write_poi
          type: 0x5900
          level_h: 2
          contacts: yes
    - condition:
        - aeroway = aerodrome
        - iata = *
      action:
        - action: write_poi
          type: 0x5901
          level_h: 4
          contacts: yes
    
    - condition:
        - aeroway = helipad
      action:
        - action: write_poi
          type: 0x5904
          level_h: 1
          contacts: yes
    - condition:
        - aeroway = terminal
      action:
        - action: write_poi
          type: 0x2f04
          level_h: 1
          contacts: yes
    
    - condition:
        - amenity = arts_centre
      action:
        - action: write_poi
          type: 0x2c09
          contacts: yes
    - condition:
        - or:
            - amenity = atm
            - and:
                - amenity = bank
                - atm = yes
      action:
        - action: write_poi
          type: 0xf601
          contacts: yes
          Text: %opening_hours
    - condition:
        - amenity = bank|bureau_de_change
      action:
        - action: write_poi
          type: 0x2f06
          contacts: yes
          Text: %opening_hours
    - condition:
        - amenity = bar|nightclub|stripclub
      action:
        - action: write_poi
          type: 0x2d02
          contacts: yes
          Text: %opening_hours
    - condition:
        - amenity = biergarten|pub
      action:
        - action: write_poi
          type: 0x4600
          contacts: yes
          Text: %opening_hours
    - condition:
        - amenity = bus_station
      action:
        - action: write_poi
          type: 0xf001
          contacts: yes
    - condition:
        - amenity = cafe
        - cuisine != *
      action:
        - action: write_poi
          type: 0x2a0e
          contacts: yes
          Text: %opening_hours
    - condition:
        - amenity = car_sharing|car_rental
      action:
        - action: write_poi
          type: 0x2f02
          contacts: yes
    - condition:
        - amenity = car_wash
      action:
        - action: write_poi
          type: 0x2f0e
          contacts: yes
          Text: %opening_hours
    - condition:
        - amenity = casino
      action:
        - action: write_poi
          type: 0x2d04
          contacts: yes
          Text: %opening_hours
    - condition:
        - amenity = cinema
      action:
        - action: write_poi
          type: 0x2d03
          contacts: yes
          Text: %opening_hours
    - condition:
        - amenity = college
      action:
        - action: write_poi
          type: 0xf503
          contacts: yes
    - condition:
        - amenity = community_centre|social_centre
      action:
        - action: write_poi
          type: 0x3005
          contacts: yes
          Text: %opening_hours
    - condition:
        - amenity = courthouse
      action:
        - action: write_poi
          type: 0x3004
          contacts: yes
          Text: %opening_hours
    - condition:
        - amenity = dentist
      action:
        - action: write_poi
          type: 0xf801
          contacts: yes
          Text: %opening_hours
    - condition:
        - or:
            - amenity = doctors
            - healthcare = doctor|blood_bank
      action:
        - action: write_poi
          type: 0x4b00
          contacts: yes
          Text: %opening_hours
    - condition:
        - amenity = drinking_water
      action:
        - action: write_poi
          type: 0x5000
    - condition:
        - amenity = driving_school
      action:
        - action: write_poi
          type: 0xf505
          contacts: yes
          Text: %opening_hours
    - condition:
        - or:
            - amenity = embassy|prison
            - office = employment_agency|government
      action:
        - action: write_poi
          type: 0x3007
          contacts: yes
          Text: %opening_hours
    - condition:
        - amenity = fast_food|food_court
      action:
        - action: write_poi
          type: 0x2a07
          contacts: yes
          Text: %opening_hours
    - condition:
        - or:
            - amenity = ferry_terminal
            - and:
                - public_transport = stop_position
                - ferry = yes
      action:
        - action: write_poi
          type: 0xf00c
          level_h: 1
          contacts: yes
    - condition:
        - amenity = fire_station
      action:
        - action: write_poi
          type: 0x3008
          contacts: yes
    - condition:
        - amenity = fountain
      action:
        - action: write_poi
          type: 0xf302
    - condition:
        - amenity = fuel
        - or:
            - fuel:diesel = yes
            - fuel:octane_95 = yes
            - fuel:octane_98 = yes
            - fuel:octane_91 = yes
            - and:
                - fuel:lpg != yes
                - fuel:cng != yes
      action:
        - action: write_poi
          type: 0x2f01
          contacts: yes
          Text: %opening_hours
    - condition:
        - amenity = fuel
        - fuel:lpg = yes
        - fuel:cng != yes
      action:
        - action: write_poi
          type: 0xf208
          contacts: yes
          Text: %opening_hours
    - condition:
        - amenity = fuel
        - fuel:cng = yes
      action:
        - action: write_poi
          type: 0xf208
          contacts: yes
          name:
            - %label (АГНКС)
            - АГНКС
          Text: %opening_hours
    - condition:
        - or:
            - amenity = grave_yard|crematorium
            - landuse = cemetery
      action:
        - action: write_poi
          type: 0x6403
          contacts: yes
    - condition:
        - or:
            - amenity = clinic|hospital
            - healthcare = centre|clinic
      action:
        - action: write_poi
          type: 0x3002
          contacts: yes
          Text: %opening_hours
    - condition:
        - amenity = kindergarten
      action:
        - action: write_poi
          type: 0xf501
          contacts: yes
    - condition:
        - amenity = library
      action:
        - action: write_poi
          type: 0x2c03
          contacts: yes
          Text: %opening_hours
    - condition:
        - amenity = marketplace
      action:
        - action: write_poi
          type: 0xf701
          contacts: yes
          Text: %opening_hours
    - condition:
        - amenity = nursing_home|social_facility
      action:
        - action: write_poi
          type: 0x2f14
          contacts: yes
    - condition:
        - amenity = parking
        - access != private
        - parking != no|garages|garage_boxes
        - hgv != yes|designated
      action:
        - action: write_poi
          type: 0x2f0b
          contacts: yes
    - condition:
        - amenity = parking
        - access != private
        - parking != no|garages|garage_boxes
        - hgv = yes|designated
      action:
        - action: write_poi
          type: 0x2f16
          contacts: yes
    - condition:
        - or:
            - amenity = pharmacy
            - shop = optician
      action:
        - action: write_poi
          type: 0x2e05
          contacts: yes
          Text: %opening_hours
    
    - condition:
        - amenity = place_of_worship
      action:
        - action: write_poi
          type:
            selector: tag
            tag: religion
            christian:
              selector: tag
              tag: denomination
              catholic: 0xf102
              baptist: 0xf103
              lutheran: 0xf103
              methodist: 0xf103
              orthodox: 0xf101
              protestant: 0xf103
              anglican: 0xf103
              roman_catholic: 0xf102
              presbyterian: 0xf103
              evangelical: 0xf103
              pentecostal: 0xf103
              greek_orthodox: 0xf101
              church_of_england: 0xf103
              new_apostolic: 0xf103
              russian_orthodox: 0xf101
              seventh_day_adventist: 0xf103
              episcopal: 0xf103
              reformed: 0xf103
              united_reformed: 0xf103
              church_of_scotland: 0xf103
              _empty: 0x2c0b
              _default: 0x2c0b
            muslim: 0xf104
            jewish: 0xf105
            buddhist: 0xf106
            hindu: 0xf106
            _empty: 0x2c0b
            _default: 0x2c0b
          level_h: 1
          contacts: yes
          Text: %opening_hours
    
    - condition:
        - amenity = police
      action:
        - action: write_poi
          type:
            selector: tag
            tag: name
            ДПС: 0xf202
            Пост ДПС: 0xf202
            пост ДПС: 0xf202
            _empty: 0x3001
            _default: 0x3001
          level_h: 1
          contacts: yes
    - condition:
        - amenity = post_office
      action:
        - action: write_poi
          type: 0x2f05
          contacts: yes
          Text: %opening_hours
    - condition:
        - amenity = public_building
        - only_node
      action:
        - action: write_poi
          type: 0x6405
          contacts: yes
    
  • = nodes-navitel.yml = 2 =
    - condition:
        - or:
            - amenity = restaurant
            - and:
               - amenity = cafe
               - cuisine = *
      action:
        - action: write_poi
          type:
            selector: tag
            tag: cuisine
            _default: 0x2a00
            _empty: 0x4500
            american: 0x2a01
            asian: 0x2a02
            indian: 0x2a02
            korean: 0x2a02
            noodle: 0x2a02
            thai: 0x2a02
            barbecue: 0x2a03
            bbq: 0x2a03
            chinese: 0x2a04
            cake: 0x2a05
            coffee_shop: 0x2a0e
            ice_cream: 0x2a05
            pie: 0x2a05
            international: 0x2a06
            burger: 0x2a07
            chicken: 0x2a07
            kebab: 0x2a07
            sandwich: 0x2a07
            italian: 0x2a08
            pasta: 0x2a08
            mexican: 0x2a09
            pizza: 0x2a0a
            fish: 0x2a0b
            seafood: 0x2a0b
            grill: 0x2a0c
            steak_house: 0x2a0c
            bagel: 0x2a0d
            donut: 0x2a0d
            doughnut: 0x2a0d
            french: 0x2a0f
            german: 0x2a10
            british: 0x2a11
          contacts: yes
          Text: %opening_hours
    
    - condition:
        - or:
            - amenity = sauna
            - leisure = sauna
      action:
        - action: write_poi
          type: 0xf603
          contacts: yes
          Text: %opening_hours
    - condition:
        - amenity = school
      action:
        - action: write_poi
          type: 0x2c05
          contacts: yes
    - condition:
        - or:
            - amenity = shelter
            - tourism = alpine_hut|chalet
      action:
        - action: write_poi
          type: 0x6100
    - condition:
        - or:
            - amenity = telephone|emergency_phone
            - emergency = phone
      action:
        - action: write_poi
          type: 0x5100
    - condition:
        - amenity = theatre
      action:
        - action: write_poi
          type: 0x2d01
          contacts: yes
    - condition:
        - amenity = toilets
      action:
        - action: write_poi
          type: 0x4e00
          contacts: yes
    - condition:
        - amenity = townhall
      action:
        - action: write_poi
          type: 0x3003
          level_h: 1
          contacts: yes
    - condition:
        - amenity = university
      action:
        - action: write_poi
          type: 0xf504
          contacts: yes
    - condition:
        - amenity = veterinary
      action:
        - action: write_poi
          type: 0xf802
          contacts: yes
          Text: %opening_hours
    
    - condition:
        - barrier = block|gate|lift_gate
        - access = no|private|destination
      action:
        - action: write_poi
          type: 0xf207
    
    - condition:
        - barrier = border_control
      action:
        - action: write_poi
          type: 0x3006
          level_h: 1
          contacts: yes
    - condition:
        - barrier = toll_booth
      action:
        - action: write_poi
          type: 0x2500
    
    - condition:
        - type = boundary|multipolygon
        - boundary = administrative
        - admin_level = 4
      action:
        - action: write_poi
          type: 0x1500
          level_l: 4
          level_h: 4
    - condition:
        - type = boundary|multipolygon
        - boundary = administrative
        - admin_level = 6
      action:
        - action: write_poi
          type: 0x1E00
          level_l: 3
          level_h: 4
    
    - condition:
        - building = *
        - building != no|collapsed
        - addr:housenumber = *
        - amenity != *
        - shop != *
        - tourism != *
        - only_node
        - inside_city
      action:
        - action: write_poi
          type: 0x2800
          Label: %house
          contacts: yes
    - condition:
        - building = *
        - building != no|collapsed|abandoned
        - or:
            - abandoned != yes|building
            - abandoned:building != *
        - only_node
        - ~inside_city
      action:
        - action: write_poi
          type: 0x6100
          contacts: yes
    - condition:
        - building = *
        - or:
            - building = no|collapsed
            - abandoned = yes|building
            - abandoned:building = *
        - only_node
      action:
        - action: write_poi
          type: 0x6415
          contacts: yes
    
    # Secondary address
    #- condition:
    #    - or:
    #        - addr2:street = *
    #        - addr:street2 = *
    #        - addr2:housenumber = *
    #        - addr:housenumber2 = *
    #  action:
    #    - action: write_poi
    #      type: 0x2800
    #      contacts: yes
    #      extra_fields:
    #        StreetDesc:
    #          - %street2
    #        HouseNumber:
    #          - %house2
    
    - condition:
        - craft = carpenter
      action:
        - action: write_poi
          type: 0xf60b
          contacts: yes
          Text: %opening_hours
    - condition:
        - or:
            - craft = tailor
            - shop = tailor
      action:
        - action: write_poi
          type: 0xf606
          contacts: yes
          Text: %opening_hours
    - condition:
        - craft = electrician|plumber|hvac|locksmith
      action:
        - action: write_poi
          type: 0x2f13
          contacts: yes
          Text: %opening_hours
    
    - condition:
        - or:
            - barrier = sally_port
            - covered = yes
            - tunnel = building_passage
      action:
        - action: write_poi
          type: 0x6601
    
    - condition:
        - highway = bus_stop
      action:
        - action: write_poi
          type: 0xf002
          contacts: yes
    - condition:
        - or:
            - highway = ford
            - ford = yes
      action:
        - action: write_poi
          type: 0xf307
    - condition:
        - highway = mini_roundabout
      action:
        - action: write_poi
          type: 0xf20c
    - condition:
        - highway = rest_area|services
        - hgv != yes|designated
      action:
        - action: write_poi
          type: 0x2f0b
          level_h: 1
    - condition:
        - highway = rest_area|services
        - hgv = yes|designated
      action:
        - action: write_poi
          type: 0x2f16
          level_h: 1
    - condition:
        - highway = speed_camera
        - only_node
      action:
        - action: write_poi
          type: 0xf205
    - condition:
        - or:
            - highway = traffic_signals
            - and:
                - highway = crossing
                - crossing = traffic_signals
      action:
        - action: write_poi
          type: 0xf201
    
    - condition:
        - historic = archaeological_site|battlefield|castle|ruins
      action:
        - action: write_poi
          type: 0x2c04
    - condition:
        - historic = memorial|monument|wayside_cross|wayside_shrine
      action:
        - action: write_poi
          type: 0xf301
    - condition:
        - historic = wreck
      action:
        - action: write_poi
          type: 0x4200
    
    - condition:
        - internet_access = public|wlan
      action:
        - action: write_poi
          type: 0xf615
    
    - condition:
        - or:
            - landuse = forest
            - natural = wood
        - only_node
      action:
        - action: write_poi
          type: 0x660a
          level_h: 1
    - condition:
        - landuse = peat_cutting
      action:
        - action: write_poi
          type: 0xf30b
    - condition:
        - landuse = quarry
        - resource != peat
      action:
        - action: write_poi
          type: 0x640c
          name:
            - %label (карьер)
            - Карьер
    - condition:
        - landuse = residential
        - only_node
      action:
        - action: write_poi
          type: 0x6100
    
    - condition:
        - leisure = dance
      action:
        - action: write_poi
          type: 0x2d00
          contacts: yes
          Text: %opening_hours
    - condition:
        - leisure = fishing
      action:
        - action: write_poi
          type: 0x4100
    - condition:
        - leisure = garden|park
        - only_node
      action:
        - action: write_poi
          type: 0x2c06
          contacts: yes
          Text: %opening_hours
    - condition:
        - or:
            - leisure = ice_rink
            - sport = hockey|skating
      action:
        - action: write_poi
          type: 0x2d08
          contacts: yes
          Text: %opening_hours
    - condition:
        - leisure = marina
      action:
        - action: write_poi
          type: 0x4300
    - condition:
        - leisure = nature_reserve
      action:
        - action: write_poi
          type: 0x6612
    - condition:
        - leisure = sports_centre
        - building = *
        - sport != 9pin|10pin|bowls|golf|hockey|motor|skating|skiing|scuba_diving|swimming
      action:
        - action: write_poi
          type: 0x2d0a
          contacts: yes
          Text: %opening_hours
    - condition:
        - or:
            - leisure = stadium|track
            - and:
                - leisure = sports_centre
                - building != *
        - sport != 9pin|10pin|bowls|golf|hockey|motor|skating|skiing|scuba_diving|swimming
        - named
      action:
        - action: write_poi
          type: 0x2c08
          level_h: 1
          contacts: yes
    - condition:
        - or:
            - leisure = theme_park
            - tourism = theme_park
      action:
        - action: write_poi
          type: 0x2c01
          contacts: yes
          Text: %opening_hours
    - condition:
        - leisure = water_park
      action:
        - action: write_poi
          type: 0x5400
          contacts: yes
          Text: %opening_hours
    
  • = nodes-navitel.yml = 3 =
    - condition:
        - man_made = chimney
      action:
        - action: write_poi
          type: 0x6411
    - condition:
        - man_made = lighthouse
      action:
        - action: write_poi
          type: 0x1600
          level_h: 1
    - condition:
        - man_made = adit|mineshaft
      action:
        - action: write_poi
          type: 0x640c
          level_h: 1
    - condition:
        - man_made = petroleum_well
      action:
        - action: write_poi
          type: 0x640d
    - condition:
        - or:
            - man_made = works|gasometer|silo|storage_tank
            - power = generator|station|substation|sub_station|plant
        - only_node
      action:
        - action: write_poi
          type: 0x6400
    - condition:
        - man_made = survey_point
      action:
        - action: write_poi
          type: 0xf305
    - condition:
        - man_made = tower
        - tower:type != communication
      action:
        - action: write_poi
          type: 0x6411
          level_h: 1
    - condition:
        - or:
            - man_made = antenna|communications_tower
            - and:
                - man_made = tower
                - tower:type = communication
      action:
        - action: write_poi
          type: 0xf304
          level_h: 1
    - condition:
        - man_made = water_tower
      action:
        - action: write_poi
          type: 0xf303
    - condition:
        - man_made = water_well
      action:
        - action: write_poi
          type: 0x6414
    
    - condition:
        - maxheight = *
      action:
        - action: write_poi
          type: 0xf206
          Label: %maxheight
    - condition:
        - bridge = yes
        - maxweight = *
      action:
        - action: write_poi
          type: 0x6401
          Label: %maxweight
    - condition:
        - mountain_pass = yes
      action:
        - action: write_poi
          type: 0xf306
          level_h: 1
          ele: yes
    
    - condition:
        - military = airfield|barracks|bunker|naval_base|range
      action:
        - action: write_poi
          type: 0x640b
    - condition:
        - military = danger_area
      action:
        - action: write_poi
          type: 0x5700
    
    - condition:
        - natural = arch
      action:
        - action: write_poi
          type: 0x6601
    - condition:
        - natural = bay
      action:
        - action: write_poi
          type: 0x6503
    - condition:
        - or:
            - natural = beach
            - leisure = beach_resort
      action:
        - action: write_poi
          type: 0x5400
    - condition:
        - natural = cape
      action:
        - action: write_poi
          type: 0x6606
          level_h: 2
    - condition:
        - natural = cave_entrance
      action:
        - action: write_poi
          type: 0xf30d
          level_h: 1
    - condition:
        - natural = cliff
      action:
        - action: write_poi
          type: 0x6607
          level_h: 1
    - condition:
        - natural = geyser
      action:
        - action: write_poi
          type: 0x6509
          level_h: 1
    - condition:
        - natural = glacier
      action:
        - action: write_poi
          type: 0x650a
          level_h: 1
    - condition:
        - natural = peak
      action:
        - action: write_poi
          type: 0x6616
          level_h: 1
          ele: yes
          extra_fields:
            Label:
              - %label~[0x1f]%ele
              - ~[0x1f]%ele
              - %label
    - condition:
        - natural = ridge
        - only_node
      action:
        - action: write_poi
          type: 0x6613
          level_l: 1
          level_h: 3
    - condition:
        - natural = rock
      action:
        - action: write_poi
          type: 0x6614
    - condition:
        - natural = spring
      action:
        - action: write_poi
          type: 0x6511
    - condition:
        - natural = scree|stone
        - only_node
      action:
        - action: write_poi
          type: 0xf30a
    - condition:
        - natural = tree
      action:
        - action: write_poi
          type: 0xf404
    - condition:
        - natural = volcano
      action:
        - action: write_poi
          type: 0x6608
          level_h: 1
          ele: yes
          extra_fields:
            Label:
              - %label~[0x1f]%ele
              - ~[0x1f]%ele
              - %label
    - condition:
        - natural = water
        - only_node
      action:
        - action: write_poi
          type: 0x650d
    
    - condition:
        - office = accountant|architect
      action:
        - action: write_poi
          type: 0x2f00
          contacts: yes
          Text: %opening_hours
    - condition:
        - or:
            - office = estate_agent
            - shop = estate_agent
      action:
        - action: write_poi
          type: 0xf60f
          contacts: yes
          Text: %opening_hours
    - condition:
        - or:
            - office = insurance
            - shop = insurance
      action:
        - action: write_poi
          type: 0xf60e
          contacts: yes
          Text: %opening_hours
    - condition:
        - office = lawyer
        - lawyer != notary
      action:
        - action: write_poi
          type: 0xf60c
          contacts: yes
          Text: %opening_hours
    - condition:
        - office = lawyer
        - lawyer = notary
      action:
        - action: write_poi
          type: 0xf60d
          contacts: yes
          Text: %opening_hours
    - condition:
        - office = newspaper
      action:
        - action: write_poi
          type: 0xf611
          contacts: yes
          Text: %opening_hours
    - condition:
        - office = telecommunication
      action:
        - action: write_poi
          type: 0x2f12
          contacts: yes
          Text: %opening_hours
    - condition:
        - or:
            - office = travel_agent
            - shop = travel_agency
      action:
        - action: write_poi
          type: 0xf613
          contacts: yes
          Text: %opening_hours
    - condition:
        - shop = ticket
      action:
        - action: write_poi
          type: 0xf614
          contacts: yes
          Text: %opening_hours
    
    ##  Settlements
    
    - condition:
        - place = city
        - only_node
      action:
        - action: write_poi
          type:
            selector: if
            condition: population != *
            then: 0x700
            else:
              selector: thresholds
              value: %population
              0:        0x800
              100000:   0x700
              200000:   0x600
              500000:   0x500
              1000000:  0x400
              2000000:  0x300
              5000000:  0x200
              10000000: 0x100
          level_h: 4
          city: yes
    
    - condition:
        - place = hamlet
        - population != 0
        - abandoned != yes
        - only_node
      action:
        - action: write_poi
          type:
            selector: if
            condition: population != *
            then: 0x1000
            else:
              selector: thresholds
              value: %population
              0:   0x1000
              200: 0xf00
              500: 0xe00
          level_h: 2
          city: yes
    - condition:
        - place = island
        - named
      action:
        - action: write_poi
          type: 0x650c
          level_h: 2
    - condition:
        - place = isolated_dwelling
        - population != 0
        - abandoned != yes
        - only_node
      action:
        - action: write_poi
          type: 0x1100
          level_h: 2
    - condition:
        - place = locality
        - abandoned != *
        - abandoned:place != *
        - population !=0
      action:
        - action: write_poi
          type: 0x2800
          level_h: 2
    - condition:
        - place = locality
        - or:
            - abandoned = *
            - abandoned:place = *
            - population = 0
      action:
        - action: write_poi
          type: 0x6415
          level_h: 2
          city: yes
    - condition:
        - place = suburb
      action:
        - action: write_poi
          type: 0x1f00
          level_h: 2
    - condition:
        - place = town
        - only_node
      action:
        - action: write_poi
          type:
            selector: if
            condition: population != *
            then: 0x900
            else:
              selector: thresholds
              value: %population
              0:      0xb00
              10000:  0xa00
              20000:  0x900
              50000:  0x800
              100000: 0x700
          level_h: 3
          city: yes
    - condition:
        - place = village
        - population != 0
        - abandoned != yes
        - only_node
      action:
        - action: write_poi
          type:
            selector: if
            condition: population != *
            then: 0xc00
            else:
              selector: thresholds
              value: %population
              0:     0xe00
              1000:  0xd00
              2000:  0xc00
              5000:  0xb00
          level_h: 2
          city: yes
    - condition:
        - place = village|hamlet|isolated_dwelling
        - or:
            - abandoned = yes
            - population = 0
        - only_node
      action:
        - action: write_poi
          type: 0x1100
          name:
            - %label (нежил.)
            - (нежил.)
          level_h: 2
    - condition:
        - place = allotments
      action:
        - action: write_poi
          type: 0x6416
          level_h: 1
          city: yes
    
  • = nodes-navitel.yml = 4 =
    # Public transport
    - condition:
        - public_transport = stop_position
        - monorail = yes
      action:
        - action: write_poi
          type: 0xf008
          level_h: 1
          contacts: yes
    - condition:
        - public_transport = stop_position
        - trolleybus = yes
      action:
        - action: write_poi
          type: 0xf004
          contacts: yes
    
    - condition:
        - railway = halt
        - station != subway
      action:
        - action: write_poi
          type: 0xf006
          level_h: 1
          contacts: yes
    - condition:
        - railway = level_crossing
        - crossing != uncontrolled
      action:
        - action: write_poi
          type: 0xf203
    - condition:
        - railway = level_crossing
        - crossing = uncontrolled
      action:
        - action: write_poi
          type: 0xf20b
    - condition:
        - railway = station
        - station != subway
      action:
        - action: write_poi
          type: 0xf007
          level_h: 2
          contacts: yes
    - condition:
        - railway = station
        - station = subway
      action:
        - action: write_poi
          type: 0xf005
          level_l: 1
          DontFind: Y
    - condition:
        - railway = subway_entrance
      action:
        - action: write_poi
          type: 0xf005
          contacts: yes
    - condition:
        - railway = tram_stop
      action:
        - action: write_poi
          type: 0xf003
          contacts: yes
    
    - condition:
        - shop = adult|erotic|gift|toys
      action:
        - action: write_poi
          type: 0xf709
          contacts: yes
          Text: %opening_hours
    - condition:
        - shop = alcohol|newsagent|video
      action:
        - action: write_poi
          type: 0x2e00
          contacts: yes
          Text: %opening_hours
    - condition:
        - shop = beverages|butcher|convenience|deli|farm|greengrocer|grocery|supermarket
      action:
        - action: write_poi
          type: 0x2e02
          contacts: yes
          Text: %opening_hours
    - condition:
        - shop = bakery|confectionery
      action:
        - action: write_poi
          type: 0x2a0d
          contacts: yes
          Text: %opening_hours
    - condition:
        - shop = bicycle|dive|outdoor|sports
      action:
        - action: write_poi
          type: 0xf707
          contacts: yes
          Text: %opening_hours
    - condition:
        - shop = baby_goods|books|frame|hearing_aids|photo|stationery|tobacco
      action:
        - action: write_poi
          type: 0x2e0a
          contacts: yes
          Text: %opening_hours
    - condition:
        - shop = car
        - service = repair
      action:
        - action: write_poi
          type: 0x2f03
          contacts: yes
          Text: %opening_hours
    - condition:
        - shop = car|car_repair
        - service = tyres
      action:
        - action: write_poi
          type: 0xf209
          contacts: yes
          Text: %opening_hours
    - condition:
        - shop = car_repair|motorcycle_repair
        - service != tyres
      action:
        - action: write_poi
          type: 0x2f03
          contacts: yes
          Text: %opening_hours
    - condition:
        - shop = car|car_parts|motorcycle|motorcycle_parts
        - or:
            - service = dealer|parts
            - service != *
      action:
        - action: write_poi
          type: 0x2f07
          contacts: yes
          Text: %opening_hours
    - condition:
        - shop = chemist
      action:
        - action: write_poi
          type: 0xf704
          contacts: yes
          Text: %opening_hours
    - condition:
        - shop = clothes|fashion|second_hand
      action:
        - action: write_poi
          type: 0x2e07
          contacts: yes
          Text: %opening_hours
    - condition:
        - shop = computer
      action:
        - action: write_poi
          type: 0x2e0b
          contacts: yes
          Text: %opening_hours
    - condition:
        - shop = general|kiosk
      action:
        - action: write_poi
          type: 0x2e00
          contacts: yes
          Text: %opening_hours
    - condition:
        - shop = copyshop
      action:
        - action: write_poi
          type: 0xf612
          contacts: yes
          Text: %opening_hours
    - condition:
        - shop = department_store
      action:
        - action: write_poi
          type: 0x2e01
          contacts: yes
          Text: %opening_hours
    - condition:
        - shop = doityourself|garden_centre|glaziery
      action:
        - action: write_poi
          type: 0x2e08
          contacts: yes
          Text: %opening_hours
    - condition:
        - shop = dry_cleaning
      action:
        - action: write_poi
          type: 0xf604
          contacts: yes
          Text: %opening_hours
    - condition:
        - shop = electronics|hifi
      action:
        - action: write_poi
          type: 0xf705
          contacts: yes
          Text: %opening_hours
    - condition:
        - shop = curtain|fabrics|hardware
      action:
        - action: write_poi
          type: 0xf703
          contacts: yes
          Text: %opening_hours
    - condition:
        - shop = florist
      action:
        - action: write_poi
          type: 0xf70a
          contacts: yes
          Text: %opening_hours
    - condition:
        - or:
            - shop = funeral_directors
            - amenity = mortuary
      action:
        - action: write_poi
          type: 0x2f00
          contacts: yes
          Text: %opening_hours
    - condition:
        - shop = furniture
      action:
        - action: write_poi
          type: 0x2e09
          contacts: yes
          Text: %opening_hours
    - condition:
        - shop = hairdresser|beauty
      action:
        - action: write_poi
          type: 0xf602
          contacts: yes
          Text: %opening_hours
    - condition:
        - shop = hunting
      action:
        - action: write_poi
          type: 0xf708
          contacts: yes
          Text: %opening_hours
    - condition:
        - shop = jewelry
      action:
        - action: write_poi
          type: 0xf70b
          contacts: yes
          Text: %opening_hours
    - condition:
        - shop = laundry
      action:
        - action: write_poi
          type: 0xf604
          contacts: yes
          Text: %opening_hours
    - condition:
        - shop = mall
      action:
        - action: write_poi
          type: 0x2e04
          level_h: 1
          contacts: yes
          Text: %opening_hours
    - condition:
        - shop = massage
      action:
        - action: write_poi
          type: 0x2f00
          contacts: yes
          Text: %opening_hours
    - condition:
        - shop = mobile_phone
      action:
        - action: write_poi
          type: 0xf706
          contacts: yes
          Text: %opening_hours
    - condition:
        - shop = pawnbroker
      action:
        - action: write_poi
          type: 0x2f06
          contacts: yes
          name:
            - %label (ломбард)
            - Ломбард
          Text: %opening_hours
    - condition:
        - shop = pet
      action:
        - action: write_poi
          type: 0xf70c
          contacts: yes
          Text: %opening_hours
    - condition:
        - or:
            - shop = photo_studio
            - craft = photographer
      action:
        - action: write_poi
          type: 0xf605
          contacts: yes
          Text: %opening_hours
    - condition:
        - shop = shoes
      action:
        - action: write_poi
          type: 0xf702
          contacts: yes
          Text: %opening_hours
    - condition:
        - or:
            - shop = shoe_repair|shoes_repair
            - craft = shoemaker
      action:
        - action: write_poi
          type: 0xf60a
          contacts: yes
          Text: %opening_hours
    
    - condition:
        - sport = 9pin|10pin|bowls
      action:
        - action: write_poi
          type: 0x2d07
          contacts: yes
          Text: %opening_hours
    - condition:
        - sport = golf
      action:
        - action: write_poi
          type: 0x2d05
    - condition:
        - sport = motor
      action:
        - action: write_poi
          type: 0x2f0d
    - condition:
        - sport = skiing
      action:
        - action: write_poi
          type: 0x2d06
    - condition:
        - sport = scuba_diving
      action:
        - action: write_poi
          type: 0x5c00
    - condition:
        - or:
            - amenity = swimming_pool
            - leisure = swimming_pool
            - sport = swimming
      action:
        - action: write_poi
          type: 0x2d09
          contacts: yes
          Text: %opening_hours
    
    - condition:
        - tourism = attraction
      action:
        - action: write_poi
          type: 0x2c00
          contacts: yes
          Text: %opening_hours
    - condition:
        - tourism = camp_site|caravan_site
      action:
        - action: write_poi
          type: 0x2b03
          contacts: yes
    - condition:
        - tourism = guest_house|hostel
      action:
        - action: write_poi
          type: 0x2b02
          contacts: yes
    - condition:
        - or:
            - building = dormitory
            - amenity = dormitory
      action:
        - action: write_poi
          type: 0x2b00
          contacts: yes
    - condition:
        - tourism = hotel|motel
      action:
        - action: write_poi
          type: 0x2b01
          contacts: yes
    - condition:
        - tourism = information
      action:
        - action: write_poi
          type: 0x4c00
    - condition:
        - tourism = museum
      action:
        - action: write_poi
          type: 0x2c02
          contacts: yes
          Text: %opening_hours
    - condition:
        - or:
            - tourism = picnic_site
            - amenity = bbq
      action:
        - action: write_poi
          type: 0x4a00
    - condition:
        - or:
            - tourism = resort
            - leisure = resort
      action:
        - action: write_poi
          type: 0x2b04
          contacts: yes
    - condition:
        - tourism = viewpoint
        - only_node
      action:
        - action: write_poi
          type: 0x5200
    - condition:
        - tourism = aquarium|zoo
      action:
        - action: write_poi
          type: 0x2c07
          contacts: yes
          Text: %opening_hours
    
    - condition:
        - traffic_calming = yes|bump|cushion|hump|table
      action:
        - action: write_poi
          type: 0xf204
    
    - condition:
        - waterway = boatyard
      action:
        - action: write_poi
          type: 0x2f09
          contacts: yes
    - condition:
        - waterway = dam
      action:
        - action: write_poi
          type: 0x6407
    - condition:
        - waterway = weir|lock_gate
      action:
        - action: write_poi
          type: 0x5500
    - condition:
        - waterway = rapids
      action:
        - action: write_poi
          type: 0x650e
          level_h: 1
    - condition:
        - waterway = waterfall
      action:
        - action: write_poi
          type: 0x6508
          level_h: 2
    
  • = ways-areas-navitel.yml =
    --- ways
    ---
    
    # Settlements
    
    - condition:
        - place = city
      action:
        - action: write_polygon
          type: 0x01
          level_l: 2
          level_h: 4
          DontFind: Y
    
    - condition:
        - place = town
      action:
        - action: write_polygon
          type: 0x02
          level_l: 1
          level_h: 3
          DontFind: Y
    
    - condition:
        - place = village
      action:
        - action: write_polygon
          type: 0x03
          level_l: 1
          level_h: 2
          DontFind: Y
    
    - condition:
        - place = hamlet|isolated_dwelling
      action:
        - action: write_polygon
          type: 0x03
          level_h: &1 
            selector: thresholds
            value: !!perl/code |
              { _get_obj_area_size(shift) }
            0:      1
            0.5:    2
          DontFind: Y
    
    - condition:
        - landuse = residential|farmyard
        - building != yes
        - place != village|hamlet|isolated_dwelling
        - residential != urban
      action:
        - action: write_polygon
          type: 0x03
          level_h: *1
    
    
    # Man-made
    
    - condition:
        - or:
            - amenity = prison
            - landuse = military
      action:
        - action: write_polygon
          type: 0x04
          level_h: 1
    
    - condition:
        - or:
            - amenity = parking
            - highway = rest_area
        - building != *
      action:
        - action: write_polygon
          type: 0x05
          level_h: &2 
            selector: thresholds
            value: !!perl/code |
              { _get_obj_area_size(shift) }
            0:      0
            0.01:   1
    
    - condition:
        - or:
            - building = garage|garages
            - and:
                - or:
                    - amenity = parking
                    - landuse = garages
                - building = *
      action:
        - action: write_polygon
          type: 0x06
          level_h: *2
          presets: [ building ]
        - action: address_poi
    - condition:
        - landuse = garages
        - building != *
      action:
        - action: write_polygon
          type: 0x06
          extra_fields:
            Label:
              - %label (гар.)
              - (гар.)
          level_l: 1
          level_h:
            selector: thresholds
            value: !!perl/code |
              { _get_obj_area_size(shift) }
            0:      1
            0.01:   2
          DontFind: Y
    
    - condition:
        - aeroway = terminal|helipad
      action:
        - action: write_polygon
          type: 0x07
    
    - condition:
        - or:
            - shop = mall|supermarket
            - landuse = commercial|retail
            - amenity = marketplace
        - building != *
      action:
        - action: write_polygon
          type: 0x08
          level_h: *2
        - action: address_poi
    
    - condition:
        - amenity = college|kindergarten|school|university
        - building != *
      action:
        - action: write_polygon
          type: 0x0a
          level_h: *2
    
    - condition:
        - amenity = hospital
        - building != *
      action:
        - action: write_polygon
          type: 0x0b
          level_h: *2
    
    - condition:
        - or:
            - landuse = construction|industrial
            - man_made = wastewater_plant|water_works
            - and:
                - power = generator|station|substation|sub_station|plant
                - building != *
            - and:
                - landuse = landfill
                - natural != *
      action:
        - action: write_polygon
          type: 0x0c
          level_h: &4 
            selector: thresholds
            value: !!perl/code |
              { _get_obj_area_size(shift) }
            0:      0
            0.01:   1
            0.16:   2
    
    # Buildings
    - condition:
        - building = *
        - building != no|collapsed|apartments|detached|dormitory|house|residential|terrace|commercial|office|church|hospital|school|university|factory|industrial|manufacture|garage|garages
        - building:use != residential|commercial
        - amenity != *
        - landuse != commercial|retail|garages|residential|farmyard
        - leisure != sports_centre|stadium
        - man_made != works|gasometer
        - office != *
        - power != *
        - shop != mall|supermarket
        - sport != *
      action:
        - action: write_polygon
          type: 0x13
          presets: [ building ]
        - action: address_poi
    
    - condition:
        - or:
            - amenity = dormitory
            - building = apartments|detached|dormitory|house|residential|terrace
            - building:use = residential
      action:
        - action: write_polygon
          type: 0x6c
          presets: [ building ]
        - action: address_poi
    
    - condition:
        - or:
            - building = commercial|office
            - building:use = commercial
            - and:
                - building = *
                - or:
                    - amenity = bank|police|prison|townhall
                    - office = *
                    - landuse = commercial
      action:
        - action: write_polygon
          type: 0x6d
          presets: [ building ]
        - action: address_poi
    
    - condition:
        - or:
            - building = church|hospital|school|university
            - and:
                - building = *
                - or:
                    - amenity = *
                    - leisure = sports_centre|stadium
                    - shop = mall|supermarket
                    - sport = *
                    - landuse = retail
                - amenity != bank|dormitory|police|parking|prison|townhall
                - office != *
      action:
        - action: write_polygon
          type: 0x6e
          presets: [ building ]
        - action: address_poi
    
    - condition:
        - or:
            - building = factory|industrial|manufacture
            - man_made = works|gasometer
            - and:
                - building = *
                - power = generator|station|substation|sub_station
      action:
        - action: write_polygon
          type: 0x6f
          level_h: *2
          presets: [ building ]
        - action: address_poi
    
    - condition:
        - or:
            - leisure = common|garden|park|resort
            - landuse = recreation_ground|village_green
            - tourism = resort
      action:
        - action: write_polygon
          type: 0x17
          level_h: 1
    
    - condition:
        - landuse = farm|farmland|meadow
      action:
        - action: write_polygon
          type: 0x88
          level_h: 2
    
    - condition:
        - landuse = grass
      action:
        - action: write_polygon
          type: 0x98
          level_h: *4
    
    - condition:
        - natural = grassland|heath
      action:
        - action: write_polygon
          type: 0x95
          level_h: 2
    
    - condition:
        - building != *
        - or:
            - leisure = stadium|pitch|arena|sports_centre|swimming_pool|track
            - sport = *
      action:
        - action: write_polygon
          type: 0x19
          level_h: *2
    
    - condition:
        - landuse = cemetery|grave_yard
      action:
        - action: write_polygon
          type: 0x1a
          level_h: 1
    
    - condition:
        - landuse = vineyard
      action:
        - action: write_polygon
          type: 0x86
          level_h: 1
    
    - condition:
        - or:
            - leisure = marina
            - man_made = pier|breakwater|groyne
      action:
        - action: write_polygon
          type: 0x09
          level_h: 1
    
    # Natural
    
    - condition:
        - natural = bay
      action:
        - action: write_polygon
          type: 0x32
          level_h: &5
            selector: thresholds
            value: !!perl/code |
              { _get_obj_area_size(shift) }
            0:      3
            9:      4
    
    - condition:
        - or:
            - landuse = basin|pond|reservoir
            - natural = water
        - water != river|canal|oxbow|intermittent|tidal
        - intermittent != yes
      action:
        - action: write_polygon
          type:
            selector: thresholds
            value: !!perl/code |
              { _get_obj_area_size(shift) }
            0:      0x41
            0.25:   0x40
            11:     0x3f
            25:     0x3e
            77:     0x3d
            250:    0x3c
            600:    0x44
            1100:   0x43
            3000:   0x42
          level_h: &3 
            selector: thresholds
            value: !!perl/code |
              { _get_obj_area_size(shift) }
            0:      0
            0.016:  1
            0.5:    2
            2.5:    3
            9:      4
    
    - condition:
        - or:
            - waterway = riverbank
            - and:
                - natural = water
                - water = river|canal|oxbow
        - layer != -[1-5]
      action:
        - action: write_polygon
          type: 0x47
          level_h: *5
    
    - condition:
        - leisure = ice_rink
      action:
        - action: write_polygon
          type: 0x4d
    
    - condition:
        - natural = glacier
      action:
        - action: write_polygon
          type: 0x4d
          level_h: *3
    
  • = ways-areas-navitel.yml = 2 =
    - condition:
        - or:
            - landuse = allotments|orchard|plant_nursery
            - place = allotments
      action:
        - action: write_polygon
          type: 0x4e
          level_h: *4
    
    - condition:
        - natural = scrub
      action:
        - action: write_polygon
          type: 0x4f
          level_h: *3
    
    - condition:
        - or:
            - landuse = forest
            - natural = wood
        - landuse != logging
        - burnt != *
      action:
        - action: write_polygon
          type:
            selector: if
            condition: wood:density = very_sparse|sparse
            then: 0x83
            else: 0x50
          level_h: 3
    
    - condition:
        - or:
            - landuse = forest
            - natural = wood
            - was:landuse = forest
        - burnt = *
      action:
        - action: write_polygon
          type: 0x84
          level_h: *3
    
    - condition:
        - landuse = logging
      action:
        - action: write_polygon
          type: 0x85
          level_h: *3
    
    - condition:
        - or:
            - natural = marsh
            - landuse = peat_cutting
      action:
        - action: write_polygon
          type: 0x51
          level_h: *3
    
    - condition:
        - natural = wetland
      action:
        - action: write_polygon
          type:
            selector: tag
            tag: wetland
            swamp: 0x81
            reedbed: 0x8c
            saltmarsh: 0x8b
            mangrove: 0x94
            tidalflat: 0x53
            _empty: 0x51
            _default: 0x51
          level_h: *3
    
    - condition:
        - highway = *
        - area = yes
      action:
        - action: write_polygon
          type: 0x6a
          level_h: *2
    
    - condition:
        - or:
            - natural = beach|sand
            - leisure = beach_resort
      action:
        - action: write_polygon
          type: 0x89
          level_h: *3
    
    - condition:
        - or:
            - landuse = quarry
            - natural = scree
        - resource != peat|sand
        - quarry:type != peat_cutting
      action:
        - action: write_polygon
          type: 0x8a
          level_h: *3
    
    - condition:
        - or:
            - water = intermittent
            - intermittent = yes
      action:
        - action: write_polygon
          type: 0x4c
          level_h: *3
    
    - condition:
        - or:
            - water = tidal
            - natural = mud
      action:
        - action: write_polygon
          type: 0x53
          level_h: *3
    
  • = ways-lines-navitel.yml =
    --- ways
    ---
    
    - condition:
        - addr:interpolation = all|even|odd
        - only_way
      action:
        - action: process_interpolation
          type: 0x2800
          contacts: yes
    
    # Railways
    - condition:
        - railway = rail
        - service != siding|spur|yard
      action:
        - action: write_line
          type: 0x14
          level_h: 3
    
    - condition:
        - or:
            - and:
                - railway = rail
                - service = siding|spur|yard
            - railway = disused|siding|spur|yard|narrow_gauge|light_rail
      action:
        - action: write_line
          type: 0x14
          level_h: 1
    
    # Aerialway
    
    - condition:
        - or:
            - aerialway = cable_car|chair_lift|drag_lift|gondola|goods|j-bar|mixed_lift|platter|t-bar
            - railway = funicular
      action:
        - action: write_line
          type: 0x41
          level_h: 1
    
    # Water
    
    - condition:
        - natural = coastline
      action:
        - action: load_coastline
        - action: write_line
          type: 0x15
          level_h: 4
    
    - condition:
        - waterway = stream
        - tunnel != yes|culvert
        - intermittent != yes
        - stream != intermittent|ephemeral
        - water != intermittent
      action:
        - action: write_line
          type: 0x18
          level_h: 1
    
    - condition:
        - waterway = canal
        - tunnel != yes|culvert
      action:
        - action: write_line
          type: 0x1f
          level_h: 2
    
    - condition:
        - waterway = river
        - tunnel != yes|culvert
        - intermittent != yes
        - water != intermittent
      action:
        - action: write_line
          type: 0x1f
          level_h: 3
    
    - condition:
        - or:
            - barrier = ditch
            - waterway = ditch|drain
            - and:
                - waterway = river|stream
                - or:
                    - intermittent = yes
                    - stream = intermittent|ephemeral
                    - water = intermittent
        - tunnel != yes|culvert
      action:
        - action: write_line
          type: 0x26
          level_h: 1
    
    
    # Boundaries
    
    - condition:
        - boundary = administrative
        - admin_level = 2
        - only_way
      action:
        - action: write_line
          type: 0x1e
          level_h: 4
    
    - condition:
        - boundary = administrative
        - admin_level = 3|4
        - only_way
      action:
        - action: write_line
          type: 0x1c
          level_l: 2
          level_h: 4
    
    - condition:
        - boundary = administrative
        - admin_level = 5|6
        - only_way
      action:
        - action: write_line
          type: 0x1d
          level_l: 2
          level_h: 3
    
    
    
    # The rest
    
    - condition:
        - aeroway = runway
      action:
        - action: write_line
          type: 0x27
          level_h: 1
    
    - condition:
        - aeroway = taxiway
      action:
        - action: write_line
          type: 0x07
          level_h: 1
    
    - condition:
        - man_made = pipeline
        - ~inside_city
      action:
        - action: write_line
          type: 0x28
          level_h: 1
    
    - condition:
        - power = line
      action:
        - action: write_line
          type: 0x29
          level_h: 1
    
    # Navitel specific
    
    - condition:
        - barrier = wall|city_wall|fence|hedge|retaining_wall|wire_fence
      action:
        - action: write_line
          type: 0x46
    
    - condition:
        - man_made = breakwater|groyne
      action:
        - action: write_line
          type:
            selector: if
            condition: !!perl/code |
              { !_get_obj_area_size(shift) }
            then: 0x46
    
    - condition:
        - highway = construction
      action:
        - action: write_line
          type: 0x00
    
    - condition:
        - highway = service
        - access = private
      action:
        - action: write_line
          type: 0x16
    
    - condition:
        - man_made = cutline
      action:
        - action: write_line
          type: 0x48
          level_h: 1
    
    - condition:
        - natural = cliff
      action:
        - action: write_line
          type: 0x22
    
    - condition:
        - natural = ridge
      action:
        - action: write_line
          type: 0x3d
          level_l: 1
          level_h: 3
    
    
    - condition:
        - power = minor_line
        - ~inside_city
      action:
        - action: write_line
          type: 0x29
    
    - condition:
        - railway = monorail
      action:
        - action: write_line
          type: 0x40
          level_h: 1
    
    - condition:
        -  railway = tram
      action:
        - action: write_line
          type: 0x3f
    
    - condition:
        - or:
            - railway = platform
            - public_transport = platform
            - pt = platform
        - layer != -[1-5]
      action:
        - action: write_line
          type: 0x16
    
  • = ways-roads-navitel.yml =
    ##  Special nodes (barriers and external nodes)
    
    --- nodes
    ---
    
    - condition:
        - only_node
        - barrier = *
      action:
        - action: load_barrier
    
    - condition:
        - only_node
        - garmin:extnode = 1|yes
      action:
        - action: force_external_node
    
    ##  Ways
    
    --- ways
    ---
    
    # RouteParams=speed,class,oneway,toll,emergency,delivery,car,bus,taxi,foot,bike,truck
    
    
    ## Main road network
    
    - condition:
        - highway = (?:motorway|trunk|primary|secondary|tertiary)(?:_link)?|unclassified|residential|living_street|pedestrian
        - route != ferry
        - area != yes
      action:
        - action: load_road
    
          presets: [ road ]
    
          type:
            selector: if
            condition: junction = roundabout
            then: 0x0c
            else:
              selector: if
              condition: tunnel = yes
              then: 0x43
              else:
                selector: tag
                tag: highway
                motorway: 0x01
                motorway_link: 0x09
                trunk: 0x01
                trunk_link: 0x09
                primary:
                  selector: if
                  condition: inside_city
                  then: 0x04
                  else: 0x02
                primary_link: 0x08
                secondary:
                  selector: if
                  condition: inside_city
                  then: 0x05
                  else: 0x02
                secondary_link: 0x08
                tertiary:
                  selector: if
                  condition: inside_city
                  then: 0x05
                  else: 0x03
                tertiary_link: 0x08
                unclassified:
                  selector: if
                  condition: surface = compacted|gravel
                  then: 0x42
                  else:
                    selector: if
                    condition: surface = unpaved|ground|earth|mud|grass|sand|dirt
                    then: 0x0a
                    else:
                      selector: if
                      condition: inside_city
                      then: 0x06
                      else: 0x03
                residential: &1
                  selector: if
                  condition: surface = unpaved|ground|earth|mud|grass|sand|dirt
                  then: 0x0a
                  else: 0x06
                living_street: *1
                pedestrian: *1
    
          level_h:
            selector: tag
            tag: highway
            motorway: 4
            motorway_link: 2
            trunk: 4
            trunk_link: 2
            primary:
              selector: if
              condition: inside_city
              then: 3
              else: 4
            primary_link: 1
            secondary:
              selector: if
              condition: inside_city
              then: 2
              else: 3
            secondary_link: 1
            tertiary:
              selector: if
              condition: inside_city
              then: 1
              else: 2
            tertiary_link: 1
            unclassified:
              selector: if
              condition: inside_city
              then: 1
              else: 2
            residential: 1
            living_street: 1
            pedestrian: 1
    
          routeparams:
            selector: tag
            tag: highway
            motorway: '6,4,1,0,0,0,0,0,0,0,0,0'
            motorway_link: '3,4,1,0,0,0,0,0,0,0,0,0'
            trunk:
              selector: if
              condition: inside_city
              then: '3,4,0,0,0,0,0,0,0,0,0,0'
              else: '5,4,0,0,0,0,0,0,0,0,0,0'
            trunk_link: '3,4,0,0,0,0,0,0,0,0,0,0'
            primary:
              selector: if
              condition: inside_city
              then: '3,3,0,0,0,0,0,0,0,0,0,0'
              else: '4,3,0,0,0,0,0,0,0,0,0,0'
            primary_link: '2,3,0,0,0,0,0,0,0,0,0,0'
            secondary:
              selector: if
              condition: inside_city
              then: '3,2,0,0,0,0,0,0,0,0,0,0'
              else: '4,2,0,0,0,0,0,0,0,0,0,0'
            secondary_link: '2,2,0,0,0,0,0,0,0,0,0,0'
            tertiary:
              selector: if
              condition: inside_city
              then: '3,1,0,0,0,0,0,0,0,0,0,0'
              else: '4,1,0,0,0,0,0,0,0,0,0,0'
            tertiary_link: '2,1,0,0,0,0,0,0,0,0,0,0'
            unclassified:
              selector: if
              condition: inside_city
              then: '2,1,0,0,0,0,0,0,0,0,0,0'
              else: '3,1,0,0,0,0,0,0,0,0,0,0'
            residential: '2,0,0,0,0,0,0,0,0,0,0,0'
            living_street: '1,0,0,0,0,0,0,0,0,0,0,0'
            pedestrian: '0,0,0,0,0,1,1,1,1,0,0,1'
    
          oneway: &2
            selector: if
            condition: oneway = no|false|0
            then: 0
            else:
              selector: if
              condition:
                or:
                    - oneway = yes|true|1|-1
                    - junction = roundabout
                    - highway = motorway|motorway_link
              then: 1
              else: 0
    
          toll: &3
            selector: if
            condition: toll = yes|true|1
            then: 1
            else: 0
    
          reverted: &4
            selector: if
            condition: oneway = -1
            then: 1
    
          road_ref:
            selector: tag
            tag: highway
            motorway: '~[0x04]'
            _default:
              selector: if
              condition: ~inside_city
              then:
                selector: tag
                tag: highway
                trunk: '~[0x04]'
                primary: '~[0x05]'
                secondary: '~[0x06]'
                tertiary: '~[0x06]'
    
    ## Service
    
    - condition:
        - highway = service
        - access != private
    # eliminate tagging mismatch here:
    # living_street cannot be parking_aisle
        - or:
            - service != parking_aisle
            - living_street = yes
        - area != yes
        - layer != -?[2-9]
      action:
        - action: load_road
          presets: [ road ]
          type: 0x07
          routeparams: '1,0,0,0,0,0,0,0,0,0,0,0'
          oneway: *2
          toll: *3
          reverted: *4
    
    ## Tracks
    
    - condition:
        - highway = track|road
        - area != yes
      action:
        - action: load_road
          presets: [ road ]
          type:
            selector: if
            condition: tracktype = grade1
            then: 0x42
            else: 0x0a
          level_h: 1
          routeparams:
            selector: if
            condition: tracktype = grade1
            then: '2,0,0,0,0,0,0,0,0,0,0,0'
            else:
              selector: if
              condition: tracktype = grade5
              then: '0,0,0,0,1,1,1,1,1,0,0,1'
              else: '1,0,0,0,0,0,0,1,0,0,0,0'
          oneway: *2
          toll: *3
          reverted: *4
    
    ## Path
    
    - condition:
        - highway = path
      action:
        - action: load_road
          type: 0x16
          level_h:
            selector: if
            condition: inside_city
            then: 0
            else: 1
          routeparams: '0,0,0,0,1,1,1,1,1,0,0,1'
    
    ## Piers (if line)
    
    - condition:
        - man_made = pier
      action:
        - action: load_road
          type:
            selector: if
            condition: !!perl/code |
              { !_get_obj_area_size(shift) }
            then: 0x16
          routeparams: '0,0,0,0,1,1,1,1,1,0,0,1'
    
    ## Ferry lines
    
    - condition:
        - route = ferry
        - or:
            - highway = trunk|primary|secondary|tertiary|unclassified
            - ferry = trunk|primary|secondary|tertiary|unclassified
      action:
        - action: load_road
          type: 0x1b
          level_h:
            selector: tag
            tag: highway
            trunk: 4
            primary: 3
            secondary: 2
            tertiary: 1
            unclassified: 1
            _default:
              selector: tag
              tag: ferry
              trunk: 4
              primary: 3
              secondary: 2
              tertiary: 1
              unclassified: 1
    
          routeparams:
            selector: tag
            tag: highway
            trunk: '1,4,0,0,0,0,0,0,0,0,0,0'
            primary: '1,3,0,0,0,0,0,0,0,0,0,0'
            secondary: '0,2,0,0,0,0,0,0,0,0,0,0'
            tertiary: '0,1,0,0,0,0,0,0,0,0,0,0'
            unclassified: '0,1,0,0,0,0,0,0,0,0,0,0'
            _default:
              selector: tag
              tag: ferry
              trunk: '1,4,0,0,0,0,0,0,0,0,0,0'
              primary: '1,3,0,0,0,0,0,0,0,0,0,0'
              secondary: '0,2,0,0,0,0,0,0,0,0,0,0'
              tertiary: '0,1,0,0,0,0,0,0,0,0,0,0'
              unclassified: '0,1,0,0,0,0,0,0,0,0,0,0'
    
          oneway: *2
          toll: *3
          reverted: *4
    
          road_ref:
            selector: if
            condition: ~inside_city
            then:
              selector: tag
              tag: highway
              trunk: '~[0x04]'
              primary: '~[0x05]'
              secondary: '~[0x06]'
    
  • White_54: Ой-ой-ой))) Спасибо конечно но...
    Какой уж там Линукс))) Я Вам там в личку написал, ответьте, пожалуйста )))
  • Конфиги я созранил конечно, благодарю.
    Попробую что то сделать, но ге=де я и где Линукс))
    Я из под винды копошусь со всем этим безобращием
  • Заказ исполнен. А что Linux? Slash развернуть... А так практически то же самое.
Войдите или Зарегистрируйтесь чтобы комментировать.