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.

126 lines
4.0 KiB

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