Main categories of OpenStreetBrowser with support for whitewater
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.

140 lines
4.6 KiB

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