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.

89 lines
2.7 KiB

7 years ago
  1. {
  2. "type": "overpass",
  3. "name": {
  4. "ast": "Servicios d'emerxencia",
  5. "ca": "Serveis d'emergència",
  6. "cs": "Pohotovostní služby",
  7. "de": "Notfalldienste",
  8. "el": "Υπηρεσίες Έκτακτης Ανάγκης",
  9. "en": "Emergency Services",
  10. "es": "Servicios de emergencia",
  11. "et": "Hädaabi teenused",
  12. "fr": "Services d'urgence",
  13. "hu": "Vészhelyzet",
  14. "it": "Servizi d'emergenza",
  15. "ja": "緊急サービス",
  16. "nl": "Hulpdiensten",
  17. "pt": "Emergência",
  18. "pt-br": "Emergência",
  19. "ro": "Servicii urgenta",
  20. "ru": "Экстренные службы",
  21. "uk": "Швидка допомога"
  22. },
  23. "query": {
  24. "11": [
  25. "(",
  26. "node[amenity~\"^(fire_station|hospital)$\"];",
  27. "way[amenity~\"^(fire_station|hospital)$\"];",
  28. "relation[amenity~\"^(fire_station|hospital)$\"];",
  29. ")"
  30. ],
  31. "13": [
  32. "(",
  33. "node[amenity~\"^(fire_station|hospital|police)$\"];",
  34. "way[amenity~\"^(fire_station|hospital|police)$\"];",
  35. "relation[amenity~\"^(fire_station|hospital|police)$\"];",
  36. "node[emergency~\"^(phone)$\"];",
  37. ")"
  38. ]
  39. },
  40. "feature": {
  41. "pre": [
  42. "{% if tags.amenity in [ 'fire_station', 'hospital', 'police' ] %}",
  43. "{% set key = 'amenity' %}",
  44. "{% set value = tags.amenity %}",
  45. "{% elseif tags.emergency %}",
  46. "{% set key = 'emergency' %}",
  47. "{% set value = tags.emergency %}",
  48. "{% endif %}",
  49. "{% set kv = key ~ \"=\" ~ value %}"
  50. ],
  51. "description": "{{ tagTrans(key, value) }}",
  52. "markerSign": [
  53. "{% set data = const[kv] %}",
  54. "{% if data %}",
  55. "{{ data.sign }}",
  56. "{% endif %}"
  57. ]
  58. },
  59. "info": [
  60. "<table>",
  61. "{% for value, data in const %}",
  62. "{% if data.zoom <= map.zoom %}",
  63. " <tr>",
  64. " <td>{{ markerCircle({})|raw }}<div class='sign'>{{ data.sign }}</div></td>",
  65. " <td>{{ tagTrans(value|split('=')[0], value|split('=')[1]) }}</td>",
  66. " </tr>",
  67. "{% endif %}",
  68. "{% endfor %}",
  69. "</table>"
  70. ],
  71. "const": {
  72. "amenity=fire_station": {
  73. "zoom": "11",
  74. "sign": "🔥"
  75. },
  76. "amenity=hospital": {
  77. "zoom": "11",
  78. "sign": "🏥"
  79. },
  80. "amenity=police": {
  81. "zoom": "13",
  82. "sign": "👮"
  83. },
  84. "emergency=phone": {
  85. "zoom": "13",
  86. "sign": "📞"
  87. }
  88. }
  89. }