Участник:Vcohen/Шаблоны схем метро: различия между версиями

Материал из Википедии — свободной энциклопедии
Перейти к навигации Перейти к поиску
Содержимое удалено Содержимое добавлено
Нет описания правки
 
(не показано 27 промежуточных версий 3 участников)
Строка 1: Строка 1:
== Пояснения ==
Вот [[:Категория:Шаблоны:Схемы метро|категория]] с шаблонами.

=== Описание синтаксиса шаблонов ===
* SM pic - рисует элемент линии или переход между станциями ''(когда две разных станции связаны переходом)'' и принимает параметры:
** 1 - цвет (по умолчанию черный)
** 2 - конфигурация - возможные варианты соответствуют [[commons:Category:Icons for subway maps|списку существующих файлов]], например файлу SMicon S-X.png соответствует значение параметра S-X; не рекомендуется использовать значения O и X, потому что для этих двух файлов есть более развитые шаблоны SM dot и SM cross соответственно
* SM dot - рисует кружок, обозначающий станцию ''(одна станция может обслуживать несколько линий)'' и раскрашенный горизонтальными полосками в разные цвета, и принимает параметры:
** 1..5 - до 5 цветов
** link - название статьи, на которую этот кружок должен служить линком (рекомендуется делать линки и здесь, и через текст, см. ниже, либо только через текст); если это текущая статья, то вокруг кружка будет нарисован черный контур
** type - разновидность кружка (продолжение имени файла после буквы O, по умолчанию самый простой кружок без продолжения имени)
** title - текст всплывающей подсказки
* SM dotv - точно как SM dot, но полоски не горизонтальные, а вертикальные
* SM cross - изображает пересечение двух линий и принимает параметры:
** 1 - цвет "задней" линии
** 2 - идет ли "передняя" линия вертикально или горизонтально (буква V или H)
** 3 - цвет "передней" линии
** type - разновидность пересечения (продолжение имени файла после буквы X, по умолчанию самое простое пересечение без продолжения имени)
* SM text - изображает текст и принимает параметры:
** 1 - цвет текста
** 2 - сам текст
** 3 - выравнивание текста - left (по умолчанию) или right
** 4 - ширина ячейки в пикселях и т.п., например 100px (как правило можно не задавать)
** link - название статьи, на которую этот текст должен служить линком
** td - дополнительное форматирование для ячейки таблицы, которую строит шаблон, например colspan=3
* SM empty - создает пустую клетку таблицы и принимает один параметр:
** 1 - ширина клетки в столбцах (для HTML-параметра colspan). Если параметр не задан, шаблон не возвращает ничего; даже значение 1 надо задавать явно; это требуется для корректной работы шаблона при его вызове из SM smart
* SM smart - соединяет в себе SM dot, SM text и SM empty, изображая станцию и подпись при ней, и принимает параметры:
** 1..5 - до 5 цветов (если цвет всего один, то им же пишется и подпись; если больше, то подпись пишется черным)
** link - название статьи, на которую строится линк; линк появляется и у кружка, и у подписи
** text - текст подписи; подпись строится поверх таблицы и не занимает отдельных клеток; для отмены текста надо задать параметр side=none; тот же текст появляется и в качестве всплывающей подсказки
** type - разновидность кружка
** side - с какой стороны от кружка находится текст - right (по умолчанию), left или none
** X - смещение подписи вправо в столбцах при side=right или влево при side=left (начальное положение 10 пикселей от кружка до ближайшего конца подписи)
** Y - смещение подписи вниз в строках (может быть отрицательным; начальное положение подписи в одной строке с кружком)
** dir - можно поставить значение v, чтобы полоски у кружка шли по вертикали
* SM head - предназначен для первой строки таблицы. Рисует клетки, задающие форматирование для всех последующих строк. Поддерживает до 10 клеток; если нужно больше, то надо поставить этот шаблон несколько раз подряд. Шаблон принимает один параметр:
** 1 - количество клеток (по умолчанию 10)
* SM before - ставится в самом начале схемы, когда она оформляется как отдельный шаблон, и принимает параметры:
** 1 - продолжение текста заголовка после слова "Станции" (например: "Московского метрополитена")
** 2 - CSS style для внешнего div'а шаблона
** 3 - CSS style для таблицы, образующей собственно схему
* SM after - ставится в самом конце схемы, когда она оформляется как отдельный шаблон
* SM call - вызывает одну из схем, построенных при помощи вышеописанных шаблонов, и принимает параметры:
** 1 - название шаблона со схемой
** side - left или (по умолчанию) right, с какой стороны страницы должен быть показан шаблон

=== Все файлы ===

{| class="wikitable" style="background-color:lightblue;"
|-
|станция с остановкой на всех путях;<br>станция со сквозными путями;<br>обозначение текущей станции;<br>ссылка на статью, но не про станцию
|[[File:SMicon O.svg]] '''O'''
|[[File:SMicon OO.svg]] '''OO'''
|[[File:SMicon Cur.svg]] '''Cur'''
|[[File:SMicon OQ.svg]] '''OQ'''
|-
|прямой участок линии, пересечение линий
|[[File:SMicon NS.svg]] '''NS'''
|[[File:SMicon WE.svg]] '''WE'''
|[[File:SMicon X.svg]] '''X'''
|
|-
|изогнутый участок линии
|[[File:SMicon NE.svg]] '''NE'''
|[[File:SMicon SE.svg]] '''SE'''
|[[File:SMicon SW.svg]] '''SW'''
|[[File:SMicon NW.svg]] '''NW'''
|-
|Т-образный перекресток
|[[File:SMicon 3-N.svg]] '''3-N'''
|[[File:SMicon 3-E.svg]] '''3-E'''
|[[File:SMicon 3-S.svg]] '''3-S'''
|[[File:SMicon 3-W.svg]] '''3-W'''
|-
|развилка на 3 направления
|[[File:SMicon N-X.svg]] '''N-X'''
|[[File:SMicon E-X.svg]] '''E-X'''
|[[File:SMicon S-X.svg]] '''S-X'''
|[[File:SMicon W-X.svg]] '''W-X'''
|-
|развилка налево и направо
|[[File:SMicon N-WE.svg]] '''N-WE'''
|[[File:SMicon E-NS.svg]] '''E-NS'''
|[[File:SMicon S-WE.svg]] '''S-WE'''
|[[File:SMicon W-NS.svg]] '''W-NS'''
|-
|развилка прямо и налево
|[[File:SMicon N-SE.svg]] '''N-SE'''
|[[File:SMicon E-WS.svg]] '''E-WS'''
|[[File:SMicon S-NW.svg]] '''S-NW'''
|[[File:SMicon W-EN.svg]] '''W-EN'''
|-
|развилка прямо и направо
|[[File:SMicon N-SW.svg]] '''N-SW'''
|[[File:SMicon E-WN.svg]] '''E-WN'''
|[[File:SMicon S-NE.svg]] '''S-NE'''
|[[File:SMicon W-ES.svg]] '''W-ES'''
|-
|прямой переход
|[[File:SMicon T-WE.svg]] '''T-WE'''
|[[File:SMicon T-NS.svg]] '''T-NS'''
|
|
|-
|изогнутый переход
|[[File:SMicon T-NE.svg]] '''T-NE'''
|[[File:SMicon T-SE.svg]] '''T-SE'''
|[[File:SMicon T-SW.svg]] '''T-SW'''
|[[File:SMicon T-NW.svg]] '''T-NW'''
|}
<!--
А это файлы, которые скорее всего использоваться не будут. Конфигурации путей слишком разнообразны, поэтому сами пути придется обозначать без различения экспрессов и обычных, а единственным обозначением наличия экспресс-поездов будет станция с точкой внутри (файл OO).

{| class="wikitable"
|-
|станция со сквозными путями
|[[File:SMicon O-NE.png]] (O-NE)
|[[File:SMicon O-SE.png]] (O-SE)
|[[File:SMicon O-SW.png]] (O-SW)
|[[File:SMicon O-NW.png]] (O-NW)
|[[File:SMicon O-WE.png]] (O-WE)
|[[File:SMicon O-NS.png]] (O-NS)
|-
|участок линии с экспресс-путями
|[[File:SMicon L-NE.png]] (L-NE)
|[[File:SMicon L-SE.png]] (L-SE)
|[[File:SMicon L-SW.png]] (L-SW)
|[[File:SMicon L-NW.png]] (L-NW)
|[[File:SMicon L-NS.png]] (L-NS)
|[[File:SMicon L-WE.png]] (L-WE)
|-
|разные сочетания с экспресс-путями
|[[File:SMicon XX.png]] (XX)
|[[File:SMicon XH.png]] (XH)
|[[File:SMicon XV.png]] (XV)
|
|
|
|}
-->

=== Примечания ===
# Эта серия шаблонов принимает описание цвета через параметры, в самих файлах нет никаких цветов, кроме белого цвета, который воспринимается как фон схемы. Поэтому есть возможность строить схемы для любых городов с любыми цветами, даже если код цвета в свою очередь задается через шаблон. Платой за эту гибкость служит необходимость включить распечатку фона при распечатывании схем, построенных таким образом.
# Следует не путать пересадочную станцию, обозначаемую полосатым кружком, и две станции с переходом между ними. При этом для пересадочного узла, состоящего из нескольких соединенных станций, не обязательно показывать, какая станция с какой соединена и какая с какой нет, - достаточно произвольным образом связать все нужные станции между собой.
# Каждый из шаблонов образует ячейку таблицы, начиная с символа |. Начало таблицы (и еще кое-что) создается шаблоном SM before, а конец (и еще кое-что) шаблоном SM after. Схема состоит из шаблонов в следующем порядке:
#* SM before
#* SM head нужное число раз в соответствии с шириной таблицы
#* строки таблицы, начинающиеся с |- каждая
#* SM after
# Для схемы с надписями: если ячейка образована шаблоном SM text без текста, то можно внутрь ее (просто следующими строчками под этим шаблоном) вставить вложенную таблицу, образованную по тем же правилам.

== Примеры ==
== Примеры ==


Строка 979: Строка 827:
|- valign=top
|- valign=top
|
|

=== SIR ===
=== SIR ===
{{Участник:Vcohen/Nav SIR}}

{{SM before|SIR}}
{{SM head|9}}
|-
{{SM empty|1}}
{{SM smart|navy|text=Сент-Джордж|link=Сент-Джордж (станция Staten Island Railway)}}
{{SM empty|7}}
|-
{{SM empty|1}}
{{SM smart|navy|text=Томпкинсвилл|link=Томпкинсвилл (станция Staten Island Railway)}}
{{SM empty|7}}
|-
{{SM empty|1}}
{{SM smart|navy|text=Стейплтон|link=Стейплтон (станция Staten Island Railway)}}
{{SM empty|7}}
|-
{{SM empty|1}}
{{SM smart|navy|text=Клифтон|link=Клифтон (станция Staten Island Railway)}}
{{SM empty|7}}
|-
{{SM empty|1}}
{{SM smart|navy|text=Грасмир|link=Грасмир (станция Staten Island Railway)}}
{{SM empty|7}}
|-
{{SM empty|1}}
{{SM smart|navy|text=Олд-Таун|link=Олд-Таун (станция Staten Island Railway)}}
{{SM empty|7}}
|-
{{SM empty|1}}
{{SM smart|navy|text=Донган-Хилс|link=Донган-Хилс (станция Staten Island Railway)}}
{{SM empty|7}}
|-
{{SM empty|1}}
{{SM smart|navy|text=Джефферсон-ав.|link=Джефферсон-авеню (станция Staten Island Railway)}}
{{SM empty|7}}
|-
{{SM empty|1}}
{{SM smart|navy|text=Грант-Сити|link=Грант-Сити (станция Staten Island Railway)}}
{{SM empty|7}}
|-
{{SM empty|1}}
{{SM smart|navy|text=Нью-Дорп|link=Нью-Дорп (станция Staten Island Railway)}}
{{SM empty|7}}
|-
{{SM empty|1}}
{{SM smart|navy|text=Оквуд-Хайтс|link=Оквуд-Хайтс (станция Staten Island Railway)}}
{{SM empty|7}}
|-
{{SM empty|1}}
{{SM smart|navy|text=Бей-Террас|link=Бей-Террас (станция Staten Island Railway)}}
{{SM empty|7}}
|-
{{SM empty|1}}
{{SM smart|navy|text=Грейт-Килс|link=Грейт-Килс (станция Staten Island Railway)}}
{{SM empty|7}}
|-
{{SM empty|1}}
{{SM smart|navy|text=Элтингвилл|link=Элтингвилл (станция Staten Island Railway)}}
{{SM empty|7}}
|-
{{SM empty|1}}
{{SM smart|navy|text=Аннадейл|link=Аннадейл (станция Staten Island Railway)}}
{{SM empty|7}}
|-
{{SM empty|1}}
{{SM smart|navy|text=Хьюгенот|link=Хьюгенот (станция Staten Island Railway)}}
{{SM empty|7}}
|-
{{SM empty|1}}
{{SM smart|navy|text=Принсес-Бей|link=Принсес-Бей (станция Staten Island Railway)}}
{{SM empty|7}}
|-
{{SM empty|1}}
{{SM smart|navy|text=Плезант-Плейнс|link=Плезант-Плейнс (станция Staten Island Railway)}}
{{SM empty|7}}
|-
{{SM empty|1}}
{{SM smart|navy|text=Ричмонд-Валли|link=Ричмонд-Валли (станция Staten Island Railway)}}
{{SM empty|7}}
|-
{{SM empty|1}}
{{SM smart|navy|text=Нассо|link=Нассо (станция Staten Island Railway)}}
{{SM empty|7}}
|-
{{SM empty|1}}
{{SM smart|lightblue|text=Артур-Килл|link=Артур-Килл (станция Staten Island Railway)}}
{{SM empty|7}}
|-
{{SM empty|1}}
{{SM smart|navy|text=Атлантик|link=Атлантик (станция Staten Island Railway)}}
{{SM empty|7}}
|-
{{SM empty|1}}
{{SM smart|navy|text=Тоттенвилл|link=Тоттенвилл (станция Staten Island Railway)}}
{{SM empty|7}}
{{SM after}}

|
|

=== PATH ===
=== PATH ===
{{Участник:Vcohen/Nav PATH}}

{{SM before|PATH}}
{{SM head}}
{{SM head|6}}
|-
{{SM empty|8}}
{{SM smart|dir=v|blue|yellow|text=33-я улица|link=33-я улица (станция PATH)}}
{{SM empty|7}}
|-
{{SM empty|8}}
{{SM smart|dir=v|blue|yellow|text=23-я улица|link=23-я улица (станция PATH)}}
{{SM empty|7}}
|-
{{SM empty|8}}
{{SM smart|dir=v|blue|yellow|text=14-я улица|link=14-я улица (станция PATH)}}
{{SM empty|7}}
|-
{{SM empty|8}}
{{SM smart|dir=v|blue|yellow|text=Девятая улица|link=Девятая улица (станция PATH)}}
{{SM empty|7}}
|-
{{SM empty|6}}
{{SM smart|dir=v|blue|green|text=Хобокен|link=Хобокен (станция PATH)|side=left}}
{{SM empty|1}}
{{SM smart|dir=v|blue|yellow|text=Кристофер-стрит|link=Кристофер-стрит (станция PATH)}}
{{SM empty|7}}
|-
{{SM empty|6}}
{{SM pic|black|NE}}
{{SM pic|black|3-N}}
{{SM pic|black|NW}}
{{SM empty|7}}
|-
{{SM empty|7}}
{{SM smart|dir=v|green|yellow|text=Ньюпорт|link=Ньюпорт (станция PATH)}}
{{SM empty|8}}
|-
{{SM empty|6}}
{{SM pic|black|SE}}
{{SM pic|black|3-S}}
{{SM pic|black|SW}}
{{SM empty|7}}
|-
{{SM empty|6}}
{{SM smart|dir=v|red|yellow|text=Гров-стрит|link=Гров-стрит (станция PATH)|side=left}}
{{SM empty|1}}
{{SM smart|dir=v|red|green|text=Эксчейндж-Плейс|link=Эксчейндж-Плейс (станция PATH)}}
{{SM empty|7}}
|-
{{SM empty|6}}
{{SM smart|dir=v|red|yellow|text=Джорнал-сквер|link=Джорнал-сквер (станция PATH)|side=left}}
{{SM empty|1}}
{{SM smart|dir=v|red|green|text=Всемирный торг. центр|link=Всемирный торговый центр (станция PATH)}}
{{SM empty|7}}
|-
{{SM empty|6}}
{{SM smart|dir=v|red|text=Харрисон|link=Харрисон (станция PATH)|side=left}}
{{SM empty|9}}
|-
{{SM empty|6}}
{{SM smart|dir=v|red|text=Ньюарк|link=Ньюарк (станция PATH)|side=left}}
{{SM empty|9}}
{{SM after}}

|
|

=== AirTrain JFK ===
=== AirTrain JFK ===
{{SM before|AirTrain JFK}}
{{Участник:Vcohen/Nav AirTrain JFK}}
{{SM head}}
{{SM head|2}}
|-
{{SM empty|7}}
{{SM text|black|''Терминалы:''|td=colspan=4}}
{{SM pic|black|SE}}
{{SM smart|red|green|yellow|text=7|link=Терминал 7 (станция аэроэкспресса)|X=1}}
{{SM pic|black|SW}}
{{SM empty|1}}
|-
{{SM empty|7}}
{{SM smart|red|text=Джамейка|link=Джамейка (станция аэроэкспресса)|side=left}}
{{SM empty|1}}
{{SM text|red|⇔}}
{{SM empty|1}}
{{SM smart|red|green|yellow|text=8|link=Терминал 8 (станция аэроэкспресса)|side=left}}
{{SM text|red|⇐|td=align=center}}
{{SM smart|red|green|yellow|text=5|link=Терминал 5 (станция аэроэкспресса)}}
{{SM empty|1}}
|-
{{SM empty|7}}
{{SM smart|red|green|text=Федерал-Серкл|link=Федерал-Серкл (станция аэроэкспресса)|side=left}}
{{SM pic|black|WE}}
{{SM pic|black|WE}}
{{SM pic|black|WE}}
{{SM pic|black|3-E}}
{{SM text|yellow|⇑}}
{{SM pic|black|NS}}
{{SM text|yellow|⇓}}
|-
{{SM empty|7}}
{{SM smart|green|text=Леффертс-бульвар|link=Леффертс-бульвар (станция аэроэкспресса)|side=left}}
{{SM empty|1}}
{{SM text|green|⇔}}
{{SM empty|1}}
{{SM smart|red|green|yellow|text=1|link=Терминал 1 (станция аэроэкспресса)|side=left}}
{{SM text|green|⇒|td=align=center}}
{{SM smart|red|green|yellow|text=4|link=Терминал 4 (станция аэроэкспресса)}}
{{SM empty|1}}
|-
{{SM empty|6}}
{{SM smart|green|text=Хауард-Бич|link=Хауард-Бич (станция аэроэкспресса)|side=left}}
{{SM pic|green|NW}}
{{SM empty|3}}
{{SM pic|black|NE}}
{{SM smart|red|green|yellow|text=2|link=Терминал 2 (станция аэроэкспресса)|X=1|side=left}}
{{SM pic|black|NW}}
{{SM empty|1}}
{{SM after}}

|}
|}


Строка 1206: Строка 842:
{| class="wikitable"
{| class="wikitable"
|- valign=top
|- valign=top
|[[Участник:Vcohen/Nav Московский метрополитен]]
|
|[[Участник:Vcohen/Nav Петербургский метрополитен]]
=== Москва ===
{{Nav Московский метрополитен}}
|
=== Питер ===
{{Nav Петербургский метрополитен}}
|-
|-
|colspan="2"|
|colspan="2"|
=== Нью-Йорк от [[User:Kononenko Alex|Kononenko Alex]] ===
[[Участник:Vcohen/Nav Нью-Йоркский метрополитен]] (исходный автор [[User:Kononenko Alex|Kononenko Alex]])
(и самая малость моей правки)
{{Nav Нью-Йоркский метрополитен}}
|}
|}


Строка 1227: Строка 857:


=== Пока не сделано ===
=== Пока не сделано ===
* Показать названия на том варианте схемы, где их нет. {{done}} почти, надпись показывается только при поиске в браузере, но пока с проблемами...
* Показать названия на том варианте схемы, где их нет. Пока не получается, технические подробности [http://www.sql.ru/forum/1096221 здесь].
* Придумать более внятное обозначение для текущей станции.
* Придумать более внятное обозначение для текущей станции. Сделано частично - кроме черного контура сделано несколько разных плюс возможность указать в шаблоне, какой из них использовать для данной станции.
* Приспособить к мобильным устройствам (пока что [http://www.sql.ru/forum/1130936 прогресса мало]).


=== Не сделано и скорее всего не будет ===
=== Не сделано и скорее всего не будет ===
* Оптимизировать код. Сейчас получается примерно 1K на станцию, это надо уменьшить на порядок.
* Оптимизировать код. Сейчас на примере схемы Москвы получается примерно 200K на примерно 200 ссылок, т.е. 1K на станцию, и это надо уменьшить.
:* Во-первых, это вряд ли возможно. Один кружочек со ссылкой на статью в результирующем HTML'е выглядит так:
:* Во-первых, это вряд ли возможно. Один кружочек со ссылкой на статью в результирующем HTML'е выглядит так:
:: <span style="color:red;">&lt;a href="/ruwiki/wiki/'''%D0%9A%D1%80%D1%8B%D0%BB%D0%B0%D1%82%D1%81%D0%BA%D0%BE%D0%B5_(%D1%81%D1%82%D0%B0%D0%BD%D1%86%D0%B8%D1%8F_%D0%BC%D0%B5%D1%82%D1%80%D0%BE)'''" title="Крылатское"&gt;&lt;img alt="" src="'''/upwiki/wikipedia/commons/thumb/9/97/SMicon_O.svg/20px-SMicon_O.svg.png'''" width="20" height="20" srcset="'''/upwiki/wikipedia/commons/thumb/9/97/SMicon_O.svg/30px-SMicon_O.svg.png''' 1.5x, '''/upwiki/wikipedia/commons/thumb/9/97/SMicon_O.svg/40px-SMicon_O.svg.png''' 2x" /&gt;&lt;/a&gt;</span>
&lt;a href="/ruwiki/wiki/<span style="color:green;">%D0%9A%D1%80%D1%8B%D0%BB%D0%B0%D1%82%D1%81%D0%BA%D0%BE%D0%B5_</span>
<span style="color:green;">(%D1%81%D1%82%D0%B0%D0%BD%D1%86%D0%B8%D1%8F_%D0%BC%D0%B5%D1%82%D1%80%D0%BE)</span>" title="Крылатское"&gt;&lt;img alt=""
src="<span style="color:red;">/upwiki/wikipedia/commons/thumb/9/97/SMicon_O.svg/20px-SMicon_O.svg.png</span>" width="20" height="20"
srcset="<span style="color:red;">/upwiki/wikipedia/commons/thumb/9/97/SMicon_O.svg/30px-SMicon_O.svg.png</span> 1.5x,
<span style="color:red;">/upwiki/wikipedia/commons/thumb/9/97/SMicon_O.svg/40px-SMicon_O.svg.png</span> 2x" /&gt;&lt;/a&gt;
:: Здесь первый выделенный кусок текста является ссылкой на статью, а три следующих ссылками на три версии графического файла. Всё генерится автоматически, и это уже 0,5K, и уменьшить это нельзя.
:: Здесь выделенное зеленым является ссылкой на статью, а выделенное красным ссылками на три версии графического файла. Всё генерится автоматически, и это уже 0,5K, т.е. на одни только кружочки уходит 100K, - а ведь еще есть линии между кружочками, переходы и т.д.
:* Во-вторых, я не уверен, что это является проблемой.
:* Во-вторых, я не уверен, что это является проблемой.
::* Обнаружилась [[:Категория:Страницы, для которых превышен допустимый размер включаемых шаблонов]]. В нее входят некоторые страницы, на которых расположены схемы железных дорог, построенные на основе BSicons. А эта страница в нее не входит, хотя здесь суммарное количество станций гораздо больше, чем там.
::* Во-вторых-первых, обнаружилась [[:Категория:Страницы, для которых превышен допустимый размер включаемых шаблонов]]. В нее входят некоторые страницы, на которых расположены схемы, построенные на основе BSicons (а именно: [[Википедия:Шаблоны/Навигационные/Метро]], [[Большое кольцо Московской железной дороги]]). А эта страница в нее не входит (и не входила, когда прямо на ней сидели несколько схем, включая рекордную по размеру схему Нью-Йорка), хотя здесь суммарное количество станций гораздо больше, чем там.
::* Схема Московского метро - картинка, которая стоит в статье, причем не сам файл, а всего лишь превьюшка, по которой не то что кликнуть, даже разглядеть ничего нельзя - весит 74K. Поэтому полагаю, что 200K для полноценной интерактивной схемы очень даже немного.
::* Во-вторых-вторых, схема Московского метро, которая стоит в статье (причем не сам файл, а всего лишь превьюшка, на которой не то что кликнуть по конкретной станции, даже разглядеть ничего нельзя), весит 74K. Поэтому полагаю, что 200K для полноценной интерактивной схемы очень даже немного.

Текущая версия от 17:42, 14 апреля 2020

Абстрактная проба пера

[править | править код]

Центр Минска

[править | править код]

Центр Санкт-Петербурга

[править | править код]

Схемы с подписями

[править | править код]

Схемы без подписей

[править | править код]

(но каждый кружок - линк на статью)

Участник:Vcohen/Nav Московский метрополитен Участник:Vcohen/Nav Петербургский метрополитен

Участник:Vcohen/Nav Нью-Йоркский метрополитен (исходный автор Kononenko Alex)

Что надо доделать

[править | править код]
  • Заменить вычисление надписи на ее прямую передачу через параметр. Функции работы со строками едят ресурсы. ✔ Сделано, заодно на схеме Нью-Йорка добавлены к надписям обозначения маршрутов
  • Перевести файлы в svg и заменить фон на белый. ✔ Сделано, большое спасибо Hellerick
  • Привести все цвета линий к стандартным. ✔ Сделано

Пока не сделано

[править | править код]
  • Показать названия на том варианте схемы, где их нет. Пока не получается, технические подробности здесь.
  • Придумать более внятное обозначение для текущей станции. Сделано частично - кроме черного контура сделано несколько разных плюс возможность указать в шаблоне, какой из них использовать для данной станции.
  • Приспособить к мобильным устройствам (пока что прогресса мало).

Не сделано и скорее всего не будет

[править | править код]
  • Оптимизировать код. Сейчас на примере схемы Москвы получается примерно 200K на примерно 200 ссылок, т.е. 1K на станцию, и это надо уменьшить.
  • Во-первых, это вряд ли возможно. Один кружочек со ссылкой на статью в результирующем HTML'е выглядит так:
<a href="/ruwiki/wiki/%D0%9A%D1%80%D1%8B%D0%BB%D0%B0%D1%82%D1%81%D0%BA%D0%BE%D0%B5_
(%D1%81%D1%82%D0%B0%D0%BD%D1%86%D0%B8%D1%8F_%D0%BC%D0%B5%D1%82%D1%80%D0%BE)" title="Крылатское"><img alt=""
src="/upwiki/wikipedia/commons/thumb/9/97/SMicon_O.svg/20px-SMicon_O.svg.png" width="20" height="20"
srcset="/upwiki/wikipedia/commons/thumb/9/97/SMicon_O.svg/30px-SMicon_O.svg.png 1.5x,
/upwiki/wikipedia/commons/thumb/9/97/SMicon_O.svg/40px-SMicon_O.svg.png 2x" /></a>
Здесь выделенное зеленым является ссылкой на статью, а выделенное красным ссылками на три версии графического файла. Всё генерится автоматически, и это уже 0,5K, т.е. на одни только кружочки уходит 100K, - а ведь еще есть линии между кружочками, переходы и т.д.
  • Во-вторых, я не уверен, что это является проблемой.