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.

210 lines
6.9 KiB

  1. name:
  2. ca: Rutes Ciclistes
  3. cs: Cyklotrasy
  4. de: Radrouten
  5. en: Cycle Routes
  6. es: Rutas ciclistas
  7. fr: Itinéraires vélo
  8. gl: Rotas ciclistas
  9. hu: Kerékpáros útvonalak
  10. it: Percorsi ciclabili
  11. ja: 自転車ルート
  12. nb: Sykkelruter
  13. nl: Fietsroutes
  14. oc: Itineraris ciclistas
  15. pl: Trasy rowerowe
  16. pt: Ciclovias
  17. pt-br: Ciclorrotas
  18. ro: Trasee ciclism
  19. ru: Веломаршруты
  20. sr: Трасе за бицикле
  21. tr: Bisiklet Rotaları
  22. query:
  23. 6: relation[type=route][route~"^(|.*;)bicycle(|;.*)$"][network~'^(|.*;)(icn)(|;.*)$']
  24. 9: relation[type=route][route~"^(|.*;)bicycle(|;.*)$"][network~'^(|.*;)(icn|ncn)(|;.*)$']
  25. 12: relation[type=route][route~"^(|.*;)bicycle(|;.*)$"][network~'^(|.*;)(icn|ncn|rcn)(|;.*)$']
  26. 15: relation[type=route][route~"^(|.*;)bicycle(|;.*)$"]
  27. members: true
  28. feature:
  29. pre: |-
  30. {% set network = tags.network %}
  31. {% for n in tags.network|split(';') %}
  32. {% if n|matches('cn$') %}{% set network = n %}{% endif %}
  33. {% endfor %}
  34. title: |-
  35. {% if tags.ref and tags.name %}{{ tags.ref }} - {{ tags.name }}{% elseif tags.ref %}{{ tags.ref }}{% elseif tags.name %}{{ tags.name }}{% endif %}
  36. description: |-
  37. {{ tagTrans("network", network) }}
  38. markerSymbol: ''
  39. listMarkerSymbol: |-
  40. {{ markerLine({ "width": 4, "color": const[network].color|default(const[""].color) })|raw }}
  41. priority: |-
  42. {{ const[network].priority|default(4) }}
  43. styles: ''
  44. style:hover:
  45. width: 0
  46. style:selected:
  47. width: 0
  48. memberFeature:
  49. pre: |-
  50. {% set priority = 4 %}
  51. {% set network = '' %}
  52. {% set refs = [] %}
  53. {% set dirForward = false %}
  54. {% set dirBackward = false %}
  55. {% set hover = false %}
  56. {% set selected = false %}
  57. {% for master in masters %}
  58. {% set masterNetwork = '' %}
  59. {% for n in master.tags.network|split(';') %}
  60. {% if n|matches('cn$') %}{% set masterNetwork = n %}{% endif %}
  61. {% endfor %}
  62. {% set _p = const[masterNetwork].priority|default(4) %}
  63. {% if _p < priority %}
  64. {% set priority = _p %}
  65. {% set network = masterNetwork %}
  66. {% endif %}
  67. {% if master.tags.ref %}
  68. {% set refs = refs|merge([ master.tags.ref ]) %}
  69. {% endif %}
  70. {% if master.role == 'forward' %}{% set dirForward = true %}
  71. {% elseif master.role == 'backward' %}{% set dirBackward = true %}
  72. {% else %}{% set dirForward = true %}{% set dirBackward = true %}
  73. {% endif %}
  74. {% if master.flags.hover %}{% set hover = master.role|default('both') %}{% endif %}
  75. {% if master.flags.selected %}{% set selected = master.role|default('both') %}{% endif %}
  76. {% endfor %}
  77. title: ''
  78. body: |-
  79. <h4>Routes</h4>
  80. <ul class='overpass-layer-list'>
  81. {% for master in masters %}
  82. {% set masterNetwork = '' %}
  83. {% for n in master.tags.network|split(';') %}
  84. {% if n|matches('cn$') %}{% set masterNetwork = n %}{% endif %}
  85. {% endfor %}
  86. <li data-object="{{ master.id }}"><a>
  87. <div class='marker'>
  88. <div class='symbol'>{{ markerLine({ width: 4, color: const[masterNetwork].color|default(const[''].color) })|raw }}</div>
  89. </div>
  90. <div class='content'>
  91. <div class='description'>{{ tagTrans('network', masterNetwork) }}</div>
  92. <div class='title'>{% if master.tags.ref and master.tags.name %}{{ master.tags.ref }} - {{ master.tags.name|default(master.tags.ref) }}{% elseif master.tags.ref %}{{ master.tags.ref }}{% elseif master.tags.name %}{{ master.tags.name }}{% else %}{{ trans('unnamed') }}{% endif %}</div>
  93. </div>
  94. </a></li>
  95. {% endfor %}
  96. </ul>
  97. listExclude: true
  98. styles: |-
  99. default{% if hover %},hover{% endif %}{% if selected %},selected{% endif %}
  100. style:
  101. width: 4
  102. color: |-
  103. {{ const[network].color }}
  104. opacity: 1
  105. lineCap: |-
  106. {% if not dirForward or not dirBackward %}butt{% else %}round{% endif %}
  107. dashArray: |-
  108. {% if not dirForward or not dirBackward %}27,8{% endif %}
  109. dashOffset: |-
  110. {% if dirBackward %}28{% else %}0{% endif %}
  111. noClip: |-
  112. {% if not dirForward or not dirBackward %}true{% else %}false{% endif %}
  113. text: '{{ refs|join(" · ") }} '
  114. textRepeat: true
  115. textOffset: 12
  116. pattern: |-
  117. {% if dirForward and dirBackward %}{% else %}arrowHead{% endif %}
  118. pattern-offset: |-
  119. {% if dirBackward %}4{% else %}30.5{% endif %}
  120. pattern-repeat: 35
  121. pattern-polygon: true
  122. pattern-pixelSize: 9
  123. pattern-angleCorrection: |-
  124. {% if dirBackward %}180{% else %}0{% endif %}
  125. pattern-path-width: 0
  126. pattern-path-color: |-
  127. {{ const[network].color }}
  128. pattern-path-fillOpacity: 1
  129. textFontWeight: bold
  130. style:hover:
  131. pane: hover
  132. width: 4
  133. color: black
  134. lineCap: |-
  135. {% if hover == "forward" or hover == "backward" %}butt{% else %}round{% endif %}
  136. dashArray: |-
  137. {% if hover == "forward" or hover == "backward" %}27,8{% endif %}
  138. dashOffset: |-
  139. {% if hover == "backward" %}28{% else %}0{% endif %}
  140. noClip: |-
  141. {% if hover == "forward" or hover == "backward" %}true{% else %}false{% endif %}
  142. pattern: |-
  143. {% if hover == "forward" or hover == "backward" %}arrowHead{% endif %}
  144. pattern-offset: |-
  145. {% if hover == "backward" %}4{% else %}30.5{% endif %}
  146. pattern-repeat: 35
  147. pattern-polygon: true
  148. pattern-pixelSize: 9
  149. pattern-angleCorrection: |-
  150. {% if hover == "backward" %}180{% else %}0{% endif %}
  151. pattern-path-width: 0
  152. pattern-path-color: black
  153. pattern-path-fillOpacity: 1
  154. style:selected:
  155. pane: selected
  156. width: 4
  157. color: '#3f3f3f'
  158. lineCap: |-
  159. {% if selected == "forward" or selected == "backward" %}butt{% else %}round{% endif %}
  160. dashArray: |-
  161. {% if selected == "forward" or selected == "backward" %}27,8{% endif %}
  162. dashOffset: |-
  163. {% if selected == "backward" %}28{% else %}0{% endif %}
  164. noClip: |-
  165. {% if selected == "forward" or selected == "backward" %}true{% else %}false{% endif %}
  166. pattern: |-
  167. {% if selected == "forward" or selected == "backward" %}arrowHead{% endif %}
  168. pattern-offset: |-
  169. {% if selected == "backward" %}4{% else %}30.5{% endif %}
  170. pattern-repeat: 35
  171. pattern-polygon: true
  172. pattern-pixelSize: 9
  173. pattern-angleCorrection: |-
  174. {% if selected == "backward" %}180{% else %}0{% endif %}
  175. pattern-path-width: 0
  176. pattern-path-color: '#3f3f3f'
  177. pattern-path-fillOpacity: 1
  178. const:
  179. icn:
  180. color: '#ff0000'
  181. priority: 0
  182. zoom: 6
  183. ncn:
  184. color: '#ff00ba'
  185. priority: 1
  186. zoom: 9
  187. rcn:
  188. color: '#ba00ff'
  189. priority: 2
  190. zoom: 12
  191. lcn:
  192. color: '#0000ff'
  193. priority: 3
  194. zoom: 15
  195. '':
  196. color: '#007fff'
  197. priority: 4
  198. zoom: 15
  199. info: |-
  200. <table>
  201. {% for value, data in const %}
  202. {% if data.zoom <= map.zoom %}
  203. <tr>
  204. <td>{{ markerLine({ 'width': 4, color: data.color })|raw }}</td>
  205. <td>{% if value %}{{ tagTrans('network', value) }}{% else %}{{ trans('unknown') }}{% endif %}</td>
  206. </tr>
  207. {% endif %}
  208. {% endfor %}
  209. </table>