|
|
{ "type": "overpass", "name": { "de": "Höchstgeschwindigkeiten", "en": "Maxspeed", "fr": "Limites de vitesse", "hu": "Sebességkorlátozás", "pt": "Velocidade máxima", "pt-br": "Velocidade máxima" }, "query": { "11": "way[highway~\"^(motorway|trunk)$\"];", "13": "way[highway~\"^(motorway|motorway_link|trunk|trunk_link|primary|primary_link|secondary|tertiary)$\"];", "15": "way[highway~\"^(motorway|motorway_link|trunk|trunk_link|primary|primary_link|secondary|secondary_link|tertiary|tertiary_link|residential|unclassified)$\"];", "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)$\"];" }, "feature": { "pre": [ "{% set maxspeedKmh = null %}", "{% set maxspeed = null %}", "{% set unit = null %}", "", "{% if tags.maxspeed is defined %}", " {% if tags.maxspeed == 'none' %}", " {% set maxspeed = 'none' %}", " {% elseif tags.maxspeed|matches(\"^[0-9]+$\") %}", " {% set maxspeedKmh = tags.maxspeed %}", " {% set maxspeed = tags.maxspeed %}", " {% set unit = \"km/h\" %}", " {% elseif tags.maxspeed|matches( \"(^[0-9]+) mph$\") %}", " {% set m = tags.maxspeed|matches(\"(^[0-9]+) mph$\") %}", " {% set maxspeedKmh = m[1] * 1.60934 %}", " {% set maxspeed = m[1] %}", " {% set unit = \"mph\" %}", " {% endif %}", "{% endif %}", "", "{% if attribute(tags, 'maxspeed:forward') is defined %}", " {% if attribute(tags, 'maxspeed:forward') == 'none' %}", " {% set maxspeedF = 'none' %}", " {% elseif attribute(tags, 'maxspeed:forward')|matches(\"^[0-9]+$\") %}", " {% set maxspeedFKmh = attribute(tags, 'maxspeed:forward') %}", " {% set maxspeedF = attribute(tags, 'maxspeed:forward') %}", " {% set unit = \"km/h\" %}", " {% elseif attribute(tags, 'maxspeed:forward')|matches(\"^[0-9]+ mph$\") %}", " {% set m = attribute(tags, 'maxspeed:forward')|matches(\"(^[0-9]+) mph$\") %}", " {% set maxspeedFKmh = m[1] * 1.60934 %}", " {% set maxspeedF = m[1] %}", " {% set unit = \"mph\" %}", " {% endif %}", "{% endif %}", "", "{% if attribute(tags, 'maxspeed:backward') is defined %}", " {% if attribute(tags, 'maxspeed:backward') == 'none' %}", " {% set maxspeedB = 'none' %}", " {% elseif attribute(tags, 'maxspeed:backward')|matches(\"^[0-9]+$\") %}", " {% set maxspeedBKmh = attribute(tags, 'maxspeed:backward') %}", " {% set maxspeedB = attribute(tags, 'maxspeed:backward') %}", " {% set unit = \"km/h\" %}", " {% elseif attribute(tags, 'maxspeed:backward')|matches(\"^[0-9]+ mph$\") %}", " {% set m = attribute(tags, 'maxspeed:backward')|matches(\"(^[0-9]+) mph$\") %}", " {% set maxspeedBKmh = m[1] * 1.60934 %}", " {% set maxspeedB = m[1] %}", " {% set unit = \"mph\" %}", " {% endif %}", "{% endif %}", "", "{% if maxspeed == 'none' %}", "{% set color = \"#0000ff\" %}", "{% elseif not maxspeedKmh %}", "{% set color = \"#404040\" %}", "{% else %}", "{% set color = colorInterpolate(const.colorMap, (maxspeedKmh - const.offsetColorSpeed) / const.highestColorSpeed) %}", "{% endif %}", "", "{% if maxspeedF == 'none' %}", "{% set colorF = \"#0000ff\" %}", "{% elseif maxspeedFKmh %}", "{% set colorF = colorInterpolate(const.colorMap, (maxspeedFKmh - const.offsetColorSpeed) / const.highestColorSpeed) %}", "{% endif %}", "", "{% if maxspeedB == 'none' %}", "{% set colorB = \"#0000ff\" %}", "{% elseif maxspeedBKmh %}", "{% set colorB = colorInterpolate(const.colorMap, (maxspeedBKmh - const.offsetColorSpeed) / const.highestColorSpeed) %}", "{% endif %}" ], "description": [ "{% if maxspeedF or maxspeedB %}", "<span style='color: {{ colorB }}'>{{ maxspeedB == 'none' ? tagTrans('maxspeed', 'none') : maxspeedB|default(trans('unknown')) }}</span> / <span style='color: {{ colorF }}'>{{ maxspeedF == 'none' ? tagTrans('maxspeed', 'none') : maxspeedF|default(trans('unknown')) }}</span> {{ unit }}", "{% elseif maxspeed %}", "<span style='color: {{ color }}'>{{ maxspeed == 'none' ? tagTrans('maxspeed', 'none') : maxspeed }} {{ unit }}</span>", "{% elseif tags.maxspeed %}", "{{ tags.maxspeed }}", "{% else %}", "{{ trans('unknown') }}", "{% endif %}" ], "markerSymbol": "", "listMarkerSymbol": "line", "styles": "{% if maxspeedB or maxspeedF %}left,right,default{% else %}default{% endif %}", "style": { "width": "{% if maxspeedB or maxspeedF %}0{% else %}4{% endif %}", "color": "{{ color }}", "text": [ "{% if maxspeedB or maxspeedF %}", " {% if maxspeedB %}🡸 {{ maxspeedB }} {% endif %}|{% if maxspeedF %} {{ maxspeedF }} 🡺{% endif %} ", "{% else %}", " {{ maxspeed }} ", "{% endif %}" ], "textRepeat": "1", "textOffset": "4", "textFontWeight": "bold" }, "style:left": { "width": "2", "color": "{{ colorB|default('#404040') }}", "offset": "-1" }, "style:right": { "width": "2", "color": "{{ colorF|default('#404040') }}", "offset": "1" } }, "const": { "colorMap": [ "#00af00", "#ff7f00", "#ff0000", "#af00af" ], "highestColorSpeed": 150, "offsetColorSpeed": 10 }, "info": [ "<div style='display: inline-block; width: 49%;'>", "<table>", " <tr>", " <td>{{ markerLine(evaluate({}))|raw }}</td>", " <td colspan>{{ trans('unknown') }}</td>", " </tr>", "{% for i in range(10, 140, 20) %}", " <tr>", " <td>{{ markerLine(evaluate({ \"maxspeed\": i }))|raw }}</td>", " <td>{{ i }}km/h</td>", " </tr>", "{% endfor %}", " <tr>", " <td>{{ markerLine(evaluate({ \"maxspeed\": 150 }))|raw }}</td>", " <td>≥150km/h</td>", " </tr>", " <tr>", " <td>{{ markerLine(evaluate({ \"maxspeed\": \"none\" }))|raw }}</td>", " <td>{{ tagTrans('maxspeed', 'none') }}</td>", " </tr>", "</table>", "</div>", "<div style='display: inline-block; width: 49%;'>", "<table>", " <tr>", " <td>{{ markerLine(evaluate({}))|raw }}</td>", " <td colspan>{{ trans('unknown') }}</td>", " </tr>", "{% for i in range(10, 60, 10) %}", " <tr>", " <td>{{ markerLine(evaluate({ \"maxspeed\": (i * 1.60934)|round }))|raw }}</td>", " <td>{{ i }}mph</td>", " </tr>", "{% endfor %}", " <tr>", " <td>{{ markerLine(evaluate({ \"maxspeed\": (75 * 1.60934)|round }))|raw }}</td>", " <td>75mph</td>", " </tr>", " <tr>", " <td>{{ markerLine(evaluate({ \"maxspeed\": (95 * 1.60934)|round }))|raw }}</td>", " <td>≥95mph</td>", " </tr>", " <tr>", " <td>{{ markerLine(evaluate({ \"maxspeed\": \"none\" }))|raw }}</td>", " <td>{{ tagTrans('maxspeed', 'none') }}</td>", " </tr>", "</table>", "</div>" ] }
|