Main categories of OpenStreetBrowser with public transport zoom level
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

127 lines
4.1 KiB

  1. {
  2. "type": "overpass",
  3. "name": {
  4. "de": "Einrichtungen",
  5. "en": "Amenities",
  6. "fr": "Équipements vélo",
  7. "pt-br": "Equipamentos"
  8. },
  9. "query": {
  10. "13": [
  11. "(",
  12. "node[amenity~\"^(bicycle_rental)$\"];",
  13. "way[amenity~\"^(bicycle_rental)$\"];",
  14. "relation[amenity~\"^(bicycle_rental)$\"];",
  15. "node[shop~\"^(bicycle)$\"];",
  16. "way[shop~\"^(bicycle)$\"];",
  17. "relation[shop~\"^(bicycle)$\"];",
  18. ")"
  19. ],
  20. "16": [
  21. "(",
  22. "node[amenity~\"^(bicycle_.*|compressed_air)$\"];",
  23. "way[amenity~\"^(bicycle_.*|compressed_air)$\"];",
  24. "relation[amenity~\"^(bicycle_.*|compressed_air)$\"];",
  25. "node[shop~\"^(bicycle)$\"];",
  26. "way[shop~\"^(bicycle)$\"];",
  27. "relation[shop~\"^(bicycle)$\"];",
  28. "node[\"monitoring:bicycle\"];",
  29. "way[\"monitoring:bicycle\"];",
  30. "relation[\"monitoring:bicycle\"];",
  31. "node[vending~\"^(bicycle_tube)$\"];",
  32. "way[vending~\"^(bicycle_tube)$\"];",
  33. "relation[vending~\"^(bicycle_tube)$\"];",
  34. ")"
  35. ]
  36. },
  37. "feature": {
  38. "pre": [
  39. "{% if tags.shop in [ 'bicycle' ] %}",
  40. " {% set key = 'shop' %}",
  41. " {% set value = tags.shop %}",
  42. "{% elseif attribute(tags, \"monitoring:bicycle\") %}",
  43. " {% set key = 'man_made' %}",
  44. " {% set value = 'monitoring_station' %}",
  45. "{% elseif tags.vending in [ 'bicycle_tube' ] %}",
  46. " {% set key = 'vending' %}",
  47. " {% set value = tags.vending %}",
  48. "{% else %}",
  49. " {% set key = 'amenity' %}",
  50. " {% set value = tags.amenity %}",
  51. "{% endif %}",
  52. "",
  53. "{% set constIndex = (key ~ \"=\" ~ value) %}"
  54. ],
  55. "title": [
  56. "{{ localizedTag(tags, 'name') |default(localizedTag(tags, 'operator')) | default(localizedTag(tags, 'ref')) | default(trans('unnamed')) }}",
  57. "",
  58. "{% if tags.capacity %}({{ tags.capacity }}){% endif %}"
  59. ],
  60. "description": "{{ tagTrans(key, value) }}",
  61. "body": [
  62. "{% if tags.capacity %}",
  63. " {{ keyTrans('capacity') }}: {{ tags.capacity }}",
  64. "{% endif %}"
  65. ],
  66. "markerSign": "{{ const[constIndex]['sign'] }}",
  67. "priority": [
  68. "{% if const[constIndex] and const[constIndex]['priority']['capacity'] %}",
  69. " {% set max=const[constIndex]['priority']['default'] %}",
  70. " {% for v in const[constIndex]['priority']['capacity'] %}",
  71. " {% if tags.capacity >= v[0] %}{% set max=v[1] %}{% endif %}",
  72. " {% endfor %}",
  73. " {{ max }}",
  74. "{% elseif const[constIndex] is defined %}",
  75. "{{ const[constIndex]['priority'] }}",
  76. "{% else %}",
  77. "10",
  78. "{% endif %}"
  79. ]
  80. },
  81. "const": {
  82. "shop=bicycle": {
  83. "sign": "🚲",
  84. "priority": 0
  85. },
  86. "amenity=bicycle_repair_station": {
  87. "sign": "🔧",
  88. "priority": 2
  89. },
  90. "amenity=bicycle_parking": {
  91. "sign": "🅿",
  92. "priority": {
  93. "capacity": [
  94. [
  95. 0,
  96. 3
  97. ],
  98. [
  99. 20,
  100. 2
  101. ],
  102. [
  103. 100,
  104. 0
  105. ]
  106. ],
  107. "default": 3
  108. }
  109. },
  110. "amenity=bicycle_rental": {
  111. "sign": "R",
  112. "priority": 1
  113. },
  114. "man_made=monitoring_station": {
  115. "sign": "#",
  116. "priority": 4
  117. },
  118. "vending=bicycle_tube": {
  119. "sign": "T",
  120. "priority": 2
  121. },
  122. "amenity=compressed_air": {
  123. "sign": "A",
  124. "priority": 2
  125. }
  126. }
  127. }