Main categories of OpenStreetBrowser
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.

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