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.

169 lines
9.2 KiB

7 years ago
  1. {
  2. "type": "overpass",
  3. "name": {
  4. "ca": "Infraestructura fèrria",
  5. "cs": "Železniční infrastruktura",
  6. "de": "Eisenbahn Infrastruktur",
  7. "en": "Railway infrastructure",
  8. "es": "Infraestructura ferroviaria",
  9. "fr": "Infrastructure ferroviaire",
  10. "gl": "Infraestrutura do ferrocarril",
  11. "hu": "Vasúti infrastruktúra",
  12. "it": "Infrastruttura ferroviaria",
  13. "ja": "鉄道インフラ",
  14. "nb": "Jernbane-infrastruktur",
  15. "nl": "Spoorweginfrastructuur",
  16. "oc": "Infrastructura ferroviària",
  17. "pl": "Infrastruktura kolejowa",
  18. "pt": "Infraestrutura ferroviária",
  19. "pt-br": "Infraestrutura ferroviária",
  20. "ru": "Железнодорожная инфраструктура",
  21. "sr": "Железничка инфраструктура",
  22. "tr": "Demiryolu altyapısı"
  23. },
  24. "query": {
  25. "11": "(way[railway=rail][usage~'^(main|branch)$'];node[railway~'^(station)$'];)",
  26. "14": "(way[railway];node[railway~'^(station|halt|tram_stop)$'];)",
  27. "17": "(node[railway];way[railway];)"
  28. },
  29. "feature": {
  30. "title": "{% if tags.ref %}{{ localizedTag(tags, 'ref') }} - {% endif %}{{ localizedTag(tags, 'name')|default(localizedTag(tags, 'operator')) }}",
  31. "description": [
  32. "{{ tagTrans('railway', tags.railway) -}}",
  33. "{%- if tags.usage %}",
  34. ", {{ tagTrans('railway=rail usage', tags.usage) }}",
  35. "{% endif -%}",
  36. "{%- if tags.service %}",
  37. ", {{ tagTrans('railway=rail service', tags.service) }}",
  38. "{% endif -%}"
  39. ],
  40. "body": [
  41. "{% if tags.operator %}{{ keyTrans('operator') }}: {{ localizedTag(tags, 'operator') }}<br>{% endif %}",
  42. "{% if tags.usage %}{{ keyTrans('railway=rail usage') }}: {{ tagTrans('railway=rail usage', tags.usage)|default(trans('unknown')) }}<br/>{% endif %}",
  43. "{% if tags.service %}{{ keyTrans('railway=rail service') }}: {{ tagTrans('railway=rail service', tags.service ) }}<br/>{% endif %}",
  44. "{{ keyTrans('gauge') }}: {{ tags.gauge|default(trans('unknown')) }}<br/>",
  45. "{% if tags.electrified == 'no' %}{{ keyTrans('electrified') }}: {{ tagTrans('electrified', 'no') }}{% elseif tags.electrified %}{{ keyTrans('electrified') }}: {{ tagTrans('electrified', tags.electrified) }}, {{ keyTrans('voltage') }}: {{ tags.voltage|default(trans('unknown')) }}, {{ keyTrans('frequency') }}: {{ tags.frequency|default(trans('unknown')) }}<br/>{% endif %}"
  46. ],
  47. "markerSign": "{% if tags.railway in [ 'halt', 'tram_stop', 'station', 'stop', 'subway_entrance' ] %}X{% endif %}",
  48. "markerSymbol": [
  49. "{% if tags.railway == 'signal' %}",
  50. "<svg anchorX='5' anchorY='8' width='9' height='15'>",
  51. " <rect x='0.5' y='0.5' width='8' height='14' style='fill: #000000; fill-opacity: 1;' />",
  52. " <circle cx='4.5' cy='4.5' r='2.5' style='stroke-width: 1; stroke: #000000; fill: #7f7f7f;'/>",
  53. " <circle cx='4.5' cy='10.5' r='2.5' style='stroke-width: 1; stroke: #000000; fill: #ff0000;'/>",
  54. "</svg>",
  55. "{% elseif tags.railway == 'switch' %}",
  56. "<svg anchorX='5' anchorY='8' width='9' height='15'>",
  57. " <rect x='0.5' y='0.5' width='8' height='14' style='fill: #ffffff; fill-opacity: 1;' />",
  58. " <line x1='2' x2='2' y1='2' y2='13' style='stroke-width: 2; stroke: #000000; stroke-linecap: round;'/>",
  59. " <line x1='2' x2='7' y1='10' y2='2' style='stroke-width: 2; stroke: #000000; stroke-linecap: round;'/>",
  60. "</svg>",
  61. "{% elseif tags.railway == 'railway_crossing' %}",
  62. "<svg anchorX='5' anchorY='8' width='9' height='15'>",
  63. " <rect x='0.5' y='0.5' width='8' height='14' style='fill: #ffffff; fill-opacity: 1;' />",
  64. " <line x1='2' x2='7' y1='2' y2='13' style='stroke-width: 2; stroke: #000000; stroke-linecap: round;'/>",
  65. " <line x1='7' x2='2' y1='2' y2='13' style='stroke-width: 2; stroke: #000000; stroke-linecap: round;'/>",
  66. "</svg>",
  67. "{% elseif tags.railway not in [ 'rail', 'tram', 'subway', 'narrow_gauge', 'abandoned', 'disused' ] %}",
  68. "{{ markerPointer({})|raw }}",
  69. "{% endif %}"
  70. ],
  71. "listMarkerSymbol": [
  72. "{% if tags.railway in [ 'station', 'halt', 'tram_stop', 'stop', 'subway_entrance', 'signal', 'switch', 'railway_crossing' ] %}",
  73. "{% else %}",
  74. "line",
  75. "{% endif %}"
  76. ],
  77. "priority": [
  78. "{% if tags.railway == 'station' %}0",
  79. "{% elseif tags.railway in [ 'halt' ] %}1",
  80. "{% elseif tags.railway in [ 'tram_stop', 'stop' ] %}2",
  81. "{% elseif tags.railway in [ 'subway_entrance' ] %}3",
  82. "{% else %}5",
  83. "{% endif %}"
  84. ],
  85. "styles": "{% if tags.railway == 'narrow_gauge' %}default,casing{% else %}default{% endif %}",
  86. "style": {
  87. "width": [
  88. "{% if tags.service == 'yard' or tags.service == 'siding' or tags.service == 'spur' or tags.service == 'crossover' %}",
  89. "1",
  90. "{% else %}",
  91. " {% if tags.railway == 'rail' %}",
  92. " {% if tags.usage == 'main' or tags.usage == 'branch' %}",
  93. " 3",
  94. " {% else %}",
  95. " 2",
  96. " {% endif %}",
  97. " {% elseif tags.railway == 'platform' %}",
  98. " 1",
  99. " {% elseif tags.railway in [ 'signal', 'switch', 'railway_crossing' ] %}",
  100. " 0",
  101. " {% else %}",
  102. " 2",
  103. " {% endif %}",
  104. "{% endif %}"
  105. ],
  106. "color": "{% if tags.railway == 'rail' or tags.railway == 'narrow_gauge' or tags.railway == 'disused' %}{% if tags.usage == 'main' %}#ff8100{% elseif tags.usage == 'branch' %}#daca00{% else %}#000000{% endif %}{% elseif tags.railway == 'subway' %}#0000ff{% elseif tags.railway == 'tram' %}#ff00ff{% elseif tags.railway == 'light_rail' %}#00BD14{% elseif tags.railway == 'platform' %}#3f3f3f{% else %}#000000{% endif %}",
  107. "opacity": "1",
  108. "dashArray": "{% if tags.railway == 'rail' %}{% elseif tags.railway == 'disused' %}1,5{% elseif tags.railway == 'abandoned' %}1,7{% endif %}",
  109. "fill": [
  110. "{% if tags.railway == 'platform' %}",
  111. "1",
  112. "{% elseif type == 'node' %}",
  113. "1",
  114. "{% else %}",
  115. "{% endif %}"
  116. ],
  117. "fillColor": [
  118. "{% if tags.railway == 'platform' %}",
  119. "#3f3f3f",
  120. "{% elseif type == 'node' %}",
  121. "#ffffff",
  122. "{% endif %}"
  123. ],
  124. "fillOpacity": [
  125. "{% if tags.railway == 'platform' %}",
  126. "0.2",
  127. "{% elseif type == 'node' %}",
  128. "0",
  129. "{% endif %}"
  130. ]
  131. },
  132. "style:casing": {
  133. "width": "{% if tags.service == 'yard' or tags.service == 'siding' or tags.service == 'spur' or tags.service == 'crossover' %}5{% else %}{% if tags.railway == 'rail' %}{% if tags.usage == 'main' or tags.usage == 'branch' %}7{% else %}6{% endif %}{% elseif tags.railway == 'platform' %}5{% else %}6{% endif %}{% endif %}",
  134. "color": "{% if tags.railway == 'rail' or tags.railway == 'narrow_gauge' or tags.railway == 'disused' %}{% if tags.usage == 'main' %}#ff8100{% elseif tags.usage == 'branch' %}#daca00{% else %}#000000{% endif %}{% elseif tags.railway == 'subway' %}#0000ff{% elseif tags.railway == 'tram' %}#ff00ff{% elseif tags.railway == 'light_rail' %}#00BD14{% elseif tags.railway == 'platform' %}#3f3f3f{% else %}#000000{% endif %}",
  135. "lineCap": "butt",
  136. "dashArray": "2,4"
  137. }
  138. },
  139. "info": [
  140. "<table>",
  141. " <tr>",
  142. " <td>{{ markerLine(evaluate({ \"railway\": \"rail\", \"usage\": \"main\" }))|raw }}</td>",
  143. " <td>{{ tagTrans('railway', 'rail') }}, {{ keyTrans('usage') }}: {{ tagTrans('usage', 'main') }}</td>",
  144. " </tr>",
  145. " <tr>",
  146. " <td>{{ markerLine(evaluate({ \"railway\": \"rail\" }))|raw }}</td>",
  147. " <td>{{ tagTrans('railway', 'rail') }}</td>",
  148. " </tr>",
  149. " <tr>",
  150. " <td>{{ markerLine(evaluate({ \"railway\": \"narrow_gauge\" }))|raw }}</td>",
  151. " <td>{{ tagTrans('railway', 'narrow_gauge') }}</td>",
  152. " </tr>",
  153. " <tr>",
  154. " <td>{{ markerLine(evaluate({ \"railway\": \"light_rail\" }))|raw }}</td>",
  155. " <td>{{ tagTrans('railway', 'light_rail') }}</td>",
  156. " </tr>",
  157. " <tr>",
  158. " <td>{{ markerLine(evaluate({ \"railway\": \"subway\" }))|raw }}</td>",
  159. " <td>{{ tagTrans('railway', 'subway') }}</td>",
  160. " </tr>",
  161. "{% if map.zoom >= 14 %}",
  162. " <tr>",
  163. " <td>{{ markerLine(evaluate({ \"railway\": \"tram\" }))|raw }}</td>",
  164. " <td>{{ tagTrans('railway', 'tram') }}</td>",
  165. " </tr>",
  166. "{% endif %}",
  167. "</table>"
  168. ]
  169. }