Шаблон:Схема транспортной системы: различия между версиями
Внешний вид
Tringoli (обсуждение | вклад) Новая страница: «<includeonly><div class="ts-transport-scheme" style="clear: both; margin: 1.2em auto; width: 100%; box-sizing: border-box; text-align: {{#switch: {{{прижатие|{{{выравнивание|центр}}}}}} | лево = left | право = right | center }};"> <!-- Контейнер графической / интерактивной схемы (Image / ImageMap) --> <div class="ts-transport-map-card" style="display: inline-block; max-width: 100%; box-...» |
Tringoli (обсуждение | вклад) мНет описания правки |
||
| (не показано 12 промежуточных версий этого же участника) | |||
| Строка 1: | Строка 1: | ||
<includeonly><div class="ts-transport-scheme" style="clear: both; margin: 1.2em auto; width: 100%; box-sizing: border-box; text-align: {{#switch: {{{прижатие|{{{выравнивание|центр}}}}}} | лево = left | право = right | center }};"> | <includeonly><div class="ts-transport-scheme" style="clear: both; margin: 1.2em auto; width: 100%; box-sizing: border-box; text-align: {{#switch: {{{прижатие|{{{выравнивание|центр}}}}}} | лево = left | право = right | center }};"> | ||
<!-- | <!-- Графическая или интерактивная ImageMap схема --> | ||
<div class="ts-transport-map-card" style="display: inline-block; max-width: 100%; box-sizing: border-box; background: var(--background-color-base, #ffffff); border: 1px solid var(--border-color-base, #d0d7de); border-radius: 10px; padding: 10px; box-shadow: 0 3px 12px rgba(0,0,0,0.06); text-align: center;"> | {{#if: {{{карта|}}} | | ||
{{#if: {{{файл|{{{изображение|}}}}}} | | <div class="ts-transport-map-card" style="display: inline-block; max-width: 100%; box-sizing: border-box; background: var(--background-color-base, #ffffff); border: 1px solid var(--border-color-base, #d0d7de); border-radius: 10px; padding: 10px; box-shadow: 0 3px 12px rgba(0,0,0,0.06); text-align: center; margin-bottom: 12px;"> | ||
<div style="overflow-x: auto; max-width: 100%;">{{{карта}}}</div> | |||
{{#if: {{{подпись|}}} | <div style="font-size: 12px; color: #57606a; margin-top: 8px; padding-top: 6px; border-top: 1px dashed var(--border-color-base, #e1e4e8); text-align: center; line-height: 1.4;">🗺 {{{подпись}}}</div> }} | |||
</div> | |||
| {{#if: {{{файл|{{{изображение|}}}}}} | | |||
<div class="ts-transport-map-card" style="display: inline-block; max-width: 100%; box-sizing: border-box; background: var(--background-color-base, #ffffff); border: 1px solid var(--border-color-base, #d0d7de); border-radius: 10px; padding: 10px; box-shadow: 0 3px 12px rgba(0,0,0,0.06); text-align: center; margin-bottom: 12px;"> | |||
<div style="overflow-x: auto; max-width: 100%;">[[Файл:{{{файл|{{{изображение}}}}}}|{{#if: {{{ширина|}}} | {{{ширина}}} | 900px }}|center|alt={{{название|Схема транспортной системы}}}|{{{описание|{{{название|}}}}}}]]</div> | <div style="overflow-x: auto; max-width: 100%;">[[Файл:{{{файл|{{{изображение}}}}}}|{{#if: {{{ширина|}}} | {{{ширина}}} | 900px }}|center|alt={{{название|Схема транспортной системы}}}|{{{описание|{{{название|}}}}}}]]</div> | ||
{{#if: {{{подпись|}}} | <div style="font-size: 12px; color: #57606a; margin-top: 8px; padding-top: 6px; border-top: 1px dashed var(--border-color-base, #e1e4e8); text-align: center; line-height: 1.4;">🗺 {{{подпись}}}</div> }} | |||
{{#if: {{{подпись|}}} | <div style="font-size: 12px; color: #57606a; margin-top: 8px; padding-top: 6px; border-top: 1px dashed var(--border-color-base, #e1e4e8); text-align: center; line-height: 1.4;">🗺 {{{подпись}}}</div> }} | |||
</div> | </div> | ||
}} }} | |||
<!-- | <!-- Единый блок: легенда линий + реестр станций --> | ||
{{#if: {{{линии|}}} | | {{#if: {{{линии|}}}{{{список|{{{1|}}}}}} | | ||
<div class="ts-transport- | <div class="ts-transport-legend-container" style="margin: 0 auto; max-width: 950px; text-align: center; padding: 14px 16px; background: #f6f8fa; border: 1px solid #d0d7de; border-radius: 10px; box-sizing: border-box; box-shadow: 0 2px 6px rgba(0,0,0,0.03);"> | ||
<div style="font-size: 11px; font-weight: bold; color: #57606a; text-transform: uppercase; margin-bottom: | |||
<div style="display: flex; flex-wrap: wrap; justify-content: center; gap: | <!-- Верхний блок: плашки линий --> | ||
{{#if: {{{линии|}}} | | |||
<div class="ts-transport-lines-legend" style="margin-bottom: {{#if: {{{список|{{{1|}}}}}} | 14px | 0 }};"> | |||
<div style="font-size: 11px; font-weight: bold; color: #57606a; text-transform: uppercase; margin-bottom: 10px; letter-spacing: 0.6px;">{{{заголовок линий|Линии скоростного транспорта}}}</div> | |||
<div style="display: flex; flex-wrap: wrap; justify-content: center; gap: 8px; align-items: center;"> | |||
{{{линии}}} | {{{линии}}} | ||
</div> | </div> | ||
</div> | </div> | ||
}} | }} | ||
<!-- | <!-- Нижний блок: сворачиваемый реестр станций --> | ||
{{#if: {{{список|{{{1|}}}}}} | | {{#if: {{{список|{{{1|}}}}}} | | ||
<div class="mw-collapsible {{#ifeq: {{{свёрнут|}}} | да | mw-collapsed | }} toccolours ts-transport-list-card" style="margin: | <div class="mw-collapsible {{#ifeq: {{{свёрнут|}}} | да | mw-collapsed | }} toccolours ts-transport-list-card" style="margin: 0 auto; width: 100%; text-align: left; box-sizing: border-box; background: #ffffff; border: 1px solid #d0d7de; border-radius: 8px; overflow: hidden; box-shadow: 0 1px 3px rgba(0,0,0,0.04); padding: 0;"> | ||
<div style="font-weight: bold; font-size: 13.5px; color: var(--color-base, #1f2328); background: | <div style="font-weight: bold; font-size: 13.5px; color: var(--color-base, #1f2328); background: #f6f8fa; padding: 9px 14px; border-bottom: 1px solid #d0d7de; display: flex; align-items: center; justify-content: space-between;"> | ||
<span>{{{заголовок списка|📋 Реестр станций и остановочных пунктов}}}</span> | |||
</div> | </div> | ||
<div class="mw-collapsible-content" style="padding: | <div class="mw-collapsible-content" style="padding: 16px 20px; font-size: 13px; line-height: 1.6; column-width: {{{ширина колонок|280px}}}; column-gap: 24px; column-rule: 1px solid #e1e4e8;"> | ||
{{{список|{{{1}}}}}} | {{{список|{{{1}}}}}} | ||
</div> | </div> | ||
</div> | |||
}} | |||
</div> | </div> | ||
}} | }} | ||
</div></includeonly><noinclude> | </div></includeonly><noinclude> | ||
== Пример схемы (статическое изображение) == | |||
== Пример схемы <small>(статическое изображение)</small> == | |||
{{Схема транспортной системы | {{Схема транспортной системы | ||
|название = Скоростной транспорт Муроморска | |название = Скоростной транспорт Муроморска | ||
|файл = Схема_Муроморского_метрополитена.png | |файл = Схема_Муроморского_метрополитена.png | ||
|ширина = 850px | |ширина = 850px | ||
|подпись = Схема линий Муроморского метрополитена | |подпись = Схема линий Муроморского метрополитена | ||
|заголовок списка = 🚇 Станции метрополитена | |заголовок списка = 🚇 Станции Муроморского метрополитена | ||
|линии = | |линии = | ||
{{ | {{СтМ|1|линия}} | ||
|список = | |список = | ||
'''[[Невско-Заводская линия]]''' | |||
* {{СтМ|1|Владимирский проспект|пересадка={{СтМ|Св|Северный вокзал}}}} | |||
* {{СтМ|1|Театральная}} | |||
* | * {{СтМ|1|Народная|ссылка=Народная (станция метро, Невско-Заводская линия)|пересадка={{СтМ|2|Народная|ссылка=Народная (станция метро, Павловская линия)}}}} | ||
* {{СтМ|1|Площадь Метростроителей|пересадка={{СтМ|3|Площадь Метростроителей}}}} | |||
** {{СтМ| | * {{СтМ|1|Морской бульвар}} | ||
* {{СтМ|1|Ауктува}} | |||
* {{СтМ|1|Машиностроителей}} | |||
* {{СтМ|1|Пролетарская|строящаяся=да}} | |||
}} | |||
== Пример схемы <small>(векторное интерактивное изображение)</small> == | |||
{{Схема транспортной системы | |||
|карта = {{#invoke:ТранспортнаяСхема|canvas|пример|прокрутка=да|ширина=850|высота=600}} | |||
|подпись = Интерактивная схема линий | |||
|заголовок линий = Линии скоростного транспорта | |||
|заголовок списка = 🚇 Станции скоростного транспорта по линиям | |||
|линии = | |||
{{СтМ|1}} | |||
{{СтМ|2}} | |||
|список = | |||
* {{СтМ|1|линия|отображение=Линия 1}} | |||
** {{СтМ|1|Станция 1-1}} | |||
** {{СтМ|1|Станция 1-2}} | |||
** {{СтМ| | ** {{СтМ|1|Станция 1-3}} | ||
** {{СтМ| | ** {{СтМ|1|Станция 1-4}} | ||
** {{СтМ| | |||
** {{СтМ| | |||
* {{СтМ|2|линия|отображение=Линия 2}} | |||
** {{СтМ|2|Станция 2-1}} | |||
** {{СтМ|2| | ** {{СтМ|2|Станция 2-2}} | ||
** {{СтМ|2|Станция 2-3}} | |||
** {{СтМ|2|Станция 2-4}} | |||
** {{СтМ| | |||
** {{СтМ| | |||
** {{СтМ| | |||
}} | }} | ||
| Строка 105: | Строка 94: | ||
== Руководство по интеграции схем == | == Руководство по интеграции схем == | ||
Шаблон поддерживает | Шаблон поддерживает 2 способа вывода транспортных схем: | ||
=== 1. Классический вариант (статический файл или реестр без схемы) === | |||
Использует загруженное изображение (.png, .jpg, .svg) или отображает только блок легенды и реестра станций (если параметр <code>|файл=</code> не указан): | |||
<pre> | <pre> | ||
{{Схема транспортной системы | {{Схема транспортной системы | ||
|название = Муроморский скоростной транспорт | |название = Муроморский скоростной транспорт | ||
|файл | |файл = Схема_Муроморского_метрополитена.png | ||
|ширина | |ширина = 850px | ||
|подпись | |подпись = Схема линий скоростного транспорта Муроморска | ||
|линии | |заголовок линий = Линии скоростного транспорта | ||
{{ | |заголовок списка = 🚇 Станции скоростного транспорта по линиям | ||
{{ | |линии = | ||
{{ | {{СтМ|1|линия}} | ||
{{СтМ|2|линия}} | |||
{{ | {{СтМ|D1|линия}} | ||
|список = | |||
| | * {{СтМ|1|линия|отображение=Линия 1 (Невско-Заводская)}} | ||
** {{СтМ|1|Владимирский проспект|пересадка={{СтМ|D1|Северный вокзал|уточнение=нет}}}} | ** {{СтМ|1|Владимирский проспект|пересадка={{СтМ|D1|Северный вокзал|уточнение=нет}}}} | ||
** {{СтМ| | ** {{СтМ|1|Площадь Метростроителей|пересадка={{СтМ|2|Площадь Метростроителей}}}} | ||
* {{СтМ|2|линия|отображение=Линия 2 (Замуррецкая)}} | |||
** {{СтМ|2|Приморская|строящаяся=да}} | |||
** {{СтМ|2|ВДНиТ|пересадка={{СтМ|А60}} {{СтМ|А61}}}} | |||
}} | }} | ||
</pre> | </pre> | ||
=== 2. | === 2. Автоматическая интерактивная векторная схема (SVG / JSON + Модуль:ТранспортнаяСхема) === | ||
Полная генерация кликабельной интерактивной карты линий и станций на лету из структурированной базы данных без необходимости ручной нарезки зон: | |||
<pre> | <pre> | ||
{{Схема транспортной системы | {{Схема транспортной системы | ||
|карта = | |||
|карта | |||
{{#invoke:ТранспортнаяСхема|canvas|Муроморского|ширина=850|высота=620}} | |||
# | |||
{{#invoke:ТранспортнаяСхема|canvas|Муроморского|ширина_блока=280|высота_блока=205}} | |||
{{#invoke:ТранспортнаяСхема|canvas|Муроморского|кадрирование=310 240 300 220|ширина_блока=280|шапка=нет}} | |||
| | |||
{{ | |||
=== | {{#invoke:ТранспортнаяСхема|canvas|Муроморского|фокус=420 310|ширина_фокуса=260|высота_фокуса=180|ширина_блока=260|шапка=нет}} | ||
|подпись = Интерактивная векторная схема (кликните по станции для перехода к статье) | |||
|заголовок линий = Линии Муроморского метрополитена | |||
{{ | |заголовок списка = 🚇 Станции Муроморского метрополитена по линиям | ||
|линии = | |||
{{СтМ|1|линия}} | |||
{{СтМ|2|линия}} | |||
|список = | |||
* {{СтМ|1|линия|отображение=Линия 1 (Невско-Заводская)}} | |||
** {{СтМ|1|Владимирский проспект|пересадка={{СтМ|D1|Северный вокзал|уточнение=нет}}}} | |||
** {{СтМ|1|Театральная}} | |||
}} | |||
</pre> | </pre> | ||
* Данные берутся автоматически из | * Данные о координатах, цветах и пересадках берутся автоматически из страницы <code>[[Шаблон:Интерактивная схема Муроморского метрополитена/data.json]]</code>. | ||
* При изменении | * При изменении трассировок или добавлении станций в JSON-файле интерактивная карта перерисовывается автоматически. | ||
</div> | </div> | ||
Текущая версия от 07:26, 23 августа 2026
Пример схемы (статическое изображение)
[править код]Линии скоростного транспорта
Пример схемы (векторное интерактивное изображение)
[править код]Руководство по интеграции схем
[править код]Шаблон поддерживает 2 способа вывода транспортных схем:
1. Классический вариант (статический файл или реестр без схемы)
[править код]Использует загруженное изображение (.png, .jpg, .svg) или отображает только блок легенды и реестра станций (если параметр |файл= не указан):
{{Схема транспортной системы
|название = Муроморский скоростной транспорт
|файл = Схема_Муроморского_метрополитена.png
|ширина = 850px
|подпись = Схема линий скоростного транспорта Муроморска
|заголовок линий = Линии скоростного транспорта
|заголовок списка = 🚇 Станции скоростного транспорта по линиям
|линии =
{{СтМ|1|линия}}
{{СтМ|2|линия}}
{{СтМ|D1|линия}}
|список =
* {{СтМ|1|линия|отображение=Линия 1 (Невско-Заводская)}}
** {{СтМ|1|Владимирский проспект|пересадка={{СтМ|D1|Северный вокзал|уточнение=нет}}}}
** {{СтМ|1|Площадь Метростроителей|пересадка={{СтМ|2|Площадь Метростроителей}}}}
* {{СтМ|2|линия|отображение=Линия 2 (Замуррецкая)}}
** {{СтМ|2|Приморская|строящаяся=да}}
** {{СтМ|2|ВДНиТ|пересадка={{СтМ|А60}} {{СтМ|А61}}}}
}}
2. Автоматическая интерактивная векторная схема (SVG / JSON + Модуль:ТранспортнаяСхема)
[править код]Полная генерация кликабельной интерактивной карты линий и станций на лету из структурированной базы данных без необходимости ручной нарезки зон:
{{Схема транспортной системы
|карта =
{{#invoke:ТранспортнаяСхема|canvas|Муроморского|ширина=850|высота=620}}
{{#invoke:ТранспортнаяСхема|canvas|Муроморского|ширина_блока=280|высота_блока=205}}
{{#invoke:ТранспортнаяСхема|canvas|Муроморского|кадрирование=310 240 300 220|ширина_блока=280|шапка=нет}}
{{#invoke:ТранспортнаяСхема|canvas|Муроморского|фокус=420 310|ширина_фокуса=260|высота_фокуса=180|ширина_блока=260|шапка=нет}}
|подпись = Интерактивная векторная схема (кликните по станции для перехода к статье)
|заголовок линий = Линии Муроморского метрополитена
|заголовок списка = 🚇 Станции Муроморского метрополитена по линиям
|линии =
{{СтМ|1|линия}}
{{СтМ|2|линия}}
|список =
* {{СтМ|1|линия|отображение=Линия 1 (Невско-Заводская)}}
** {{СтМ|1|Владимирский проспект|пересадка={{СтМ|D1|Северный вокзал|уточнение=нет}}}}
** {{СтМ|1|Театральная}}
}}
- Данные о координатах, цветах и пересадках берутся автоматически из страницы
Шаблон:Интерактивная схема Муроморского метрополитена/data.json. - При изменении трассировок или добавлении станций в JSON-файле интерактивная карта перерисовывается автоматически.
