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.

113 lines
3.9 KiB

  1. {
  2. "type": "overpass",
  3. "name": {
  4. "de": "Höchstgeschwindigkeiten",
  5. "en": "Maxspeed",
  6. "fr": "Limites de vitesse"
  7. },
  8. "query": {
  9. "11": "way[highway~\"^(motorway|trunk)$\"];",
  10. "13": "way[highway~\"^(motorway|motorway_link|trunk|trunk_link|primary|primary_link|secondary|tertiary)$\"];",
  11. "15": "way[highway~\"^(motorway|motorway_link|trunk|trunk_link|primary|primary_link|secondary|secondary_link|tertiary|tertiary_link|residential|unclassified)$\"];",
  12. "17": "way[highway~\"^(motorway|motorway_link|trunk|trunk_link|primary|primary_link|secondary|secondary_link|tertiary|tertiary_link|residential|unclassified|service|living_street|pedestrian|track|road)$\"];"
  13. },
  14. "feature": {
  15. "pre": [
  16. "{% if tags.maxspeed is not defined %}",
  17. "{% set maxspeedKmh = null %}",
  18. "{% set maxspeed = null %}",
  19. "{% set unit = null %}",
  20. "{% else %}",
  21. "",
  22. "{% if tags.maxspeed|matches(\"^[0-9]+$\") %}",
  23. "{% set maxspeedKmh = tags.maxspeed %}",
  24. "{% set maxspeed = tags.maxspeed %}",
  25. "{% set unit = \"km/h\" %}",
  26. "{% endif %}",
  27. "",
  28. "",
  29. "{% set m = tags.maxspeed|matches(\"(^[0-9]+) mph$\") %}",
  30. "{% if m %}",
  31. "{% set maxspeedKmh = m[1] * 1.60934 %}",
  32. "{% set maxspeed = m[1] %}",
  33. "{% set unit = \"mph\" %}",
  34. "{% endif %}",
  35. "",
  36. "{% endif %}",
  37. "",
  38. "{% if not maxspeedKmh %}",
  39. "{% set color = \"#404040\" %}",
  40. "{% else %}",
  41. "{% set color = colorInterpolate(const.colorMap, (maxspeedKmh - const.offsetColorSpeed) / const.highestColorSpeed) %}",
  42. "{% endif %}"
  43. ],
  44. "description": [
  45. "{% if maxspeed %}",
  46. "<span style='color: {{ color }}'>{{ maxspeed }} {{ unit }}</span>",
  47. "{% elseif tags.maxspeed %}",
  48. "{{ tags.maxspeed }}",
  49. "{% else %}",
  50. "{{ trans('unknown') }}",
  51. "{% endif %}"
  52. ],
  53. "markerSymbol": null,
  54. "listMarkerSymbol": "line",
  55. "style": {
  56. "width": "3",
  57. "color": "{{ color }}"
  58. }
  59. },
  60. "const": {
  61. "colorMap": [
  62. "#00af00",
  63. "#ff7f00",
  64. "#ff0000",
  65. "#af00af"
  66. ],
  67. "highestColorSpeed": 150,
  68. "offsetColorSpeed": 10
  69. },
  70. "info": [
  71. "<div style='display: inline-block'>",
  72. "<table>",
  73. " <tr>",
  74. " <td>{{ markerLine(evaluate({}))|raw }}</td>",
  75. " <td colspan>{{ trans('unknown') }}</td>",
  76. " </tr>",
  77. "{% for i in range(10, 140, 20) %}",
  78. " <tr>",
  79. " <td>{{ markerLine(evaluate({ \"maxspeed\": i }))|raw }}</td>",
  80. " <td>{{ i }}km/h</td>",
  81. " </tr>",
  82. "{% endfor %}",
  83. " <tr>",
  84. " <td>{{ markerLine(evaluate({ \"maxspeed\": 150 }))|raw }}</td>",
  85. " <td>≥150km/h</td>",
  86. " </tr>",
  87. "</table>",
  88. "</div>",
  89. "",
  90. "<div style='display: inline-block'>",
  91. "<table>",
  92. " <tr>",
  93. " <td>{{ markerLine(evaluate({}))|raw }}</td>",
  94. " <td colspan>{{ trans('unknown') }}</td>",
  95. " </tr>",
  96. "{% for i in range(10, 60, 10) %}",
  97. " <tr>",
  98. " <td>{{ markerLine(evaluate({ \"maxspeed\": (i * 1.60934)|round }))|raw }}</td>",
  99. " <td>{{ i }}mph</td>",
  100. " </tr>",
  101. "{% endfor %}",
  102. " <tr>",
  103. " <td>{{ markerLine(evaluate({ \"maxspeed\": (75 * 1.60934)|round }))|raw }}</td>",
  104. " <td>75mph</td>",
  105. " </tr>",
  106. " <tr>",
  107. " <td>{{ markerLine(evaluate({ \"maxspeed\": (95 * 1.60934)|round }))|raw }}</td>",
  108. " <td>≥95mph</td>",
  109. " </tr>",
  110. "</table>",
  111. "</div>"
  112. ]
  113. }