| 本模板含有複雜而精密的扩展语法。 編輯本模板前,建議您先熟悉解析器函數与本模板的设计思路、运作原理等。若您的編輯引發了意外的問題,請儘快撤銷編輯,因為本模板可能被大量頁面使用。 您所作的编辑可先在模板沙盒或您的个人页面中进行測試。 |
本模板用作產生鐵路車站的車站構造表格,可配合{{月台配置}}
使用。
參數及使用方法
參數 |
描述 |
類型 |
狀態
|
类
|
class
|
适用于整个模板的类。
|
字符串 |
選填
|
样式
|
style
|
适用于整个模板的CSS样式。
|
字符串 |
選填
|
樓層
|
floorn 层n
|
樓層編號
|
字串 |
必填
|
span
|
spann
|
樓層編號橫跨行數(rowspan),預設為1
|
字串 |
選填
|
標籤
|
labeln 标n
|
第n行樓層內容的標籤(如「地面」、「月台」、「站厅」)
|
字串 |
選填
|
內容
|
contentn 文n
|
第n行樓層內容
|
字串 |
選填
|
範例
簡單示例
{{ 車站構造
| 層1 = U1 | 標1 = 大堂
| 文1 = {{spml|A-C出口|客務中心|商店|自助服務|「iCentre」免費上網服務}}
| 層2 = G | 標2 = 月台
| 文2 = {{ 月台配置 | 系統 = 港鐵
| 組1 = 台 | 類1 = 側下 | 門1 = 左
| 組2 = 軌右 | 綫2 = 荃灣 | 往2 = 中環 | 下站2 = 大窩口 | 台2 = 2
| 組3 = 軌左 | 綫3 = 荃灣 | 往3 = 落客月台 | 台3 = 1
| 組4 = 台 | 類4 = 側上 | 門4 = 左 | 下邊框4 = 2px solid black
| 組5 = 文| 文5 = {{ 車站構造/月台出口 | D、E出口大堂 | align = center | face = top }}
}}
}}
顯示效果為:
U1 | 大堂 | A-C出口、客務中心、商店、自助服務、「iCentre」免費上網服務 |
G | 月台 | |
另一表示方法
|
{{ 車站構造
| 層1 = U1 | 標1 = 大堂
| 文1 = {{spml|A-C出口|客務中心|商店|自助服務|「iCentre」免費上網服務}}
| 層2 = G | 標2 = 月台
| 文2 = {{ 月台配置 | 系統 = 港鐵
| 組1 = 台 | 類1 = 側下 | 門1 = 左
| 組2 = 軌右 | 綫2 = 荃灣 | 往2 = 中環 | 下站2 = 大窩口 | 台2 = 2
| 組3 = 軌 | 綫3 = 荃灣 | 往3 = 落客月台 | 台3 = 1 | 右箭3 = 左
| 組4 = 台 | 類4 = 側上 | 門4 = 左 | 下邊框4 = 2px solid black
| 組5 = 文| 文5 = {{ 車站構造/月台出口 | D、E出口大堂 | align = center | face = top }}
}}
}}
顯示效果為:
U1 | 大堂 | A-C出口、客務中心、商店、自助服務、「iCentre」免費上網服務 | G | 月台 | |
|
{{ 車站構造
| floor1 = U1 | label1 = 金鐘廊
| content1 = {{spml|行人天橋|E出口(因工程暫時停用)}}
| floor2 = G | label2 = 地面
| content2 = A、B、C、D出口
| floor3 = L1 | label3 = 大堂
| content3 = {{spml|F出口|商店|客務中心|自���售票設施|自動櫃員機|數碼服務站|旅客服務|iCentre|失物及乘車優惠辦事處|警崗|洗手間}}
| floor4 = L2 | label4 = 港島綫、荃灣綫<br/>上層月台
| content4 = {{ 月台配置 | system = MTR
| g1 = tl | l1 = 荃灣 | d1 = 中環 | n1 = dest | p1 = 4
| g2 = p | p2 = island | d2 = 左
| g3 = tr | l3 = 港島 | d3 = 柴灣 | n3 = 灣仔 | p3 = 3
}}
| floor5 = L3 | label5 = 港島綫、荃灣綫<br/>下層月台
| content5 = {{ 月台配置 | system = MTR
| g1 = tr | l1 = 荃灣 | d1 = 荃灣 | n1 = 尖沙咀 | p1 = 1
| g2 = p | p2 = island | d2 = 右
| g3 = tl | l3 = 港島 | d3 = 堅尼地城 | n3 = 中環 | p3 = 2
}}
| floor6 = L4 | label6 = 轉車大堂
| content6 = 往返新舊月台之通道
| floor7 = L5 | label7 = 未來東鐵綫月台、<br/>轉乘通道
| content7 = {{ 月台配置 | system = MTR
| g1 = trf | l1 = 東鐵 | d1d1 = 羅湖 | d1d2 = 落馬洲 | n1 = 會展 | p1 = 7
| g2 = p | p2 = split-up | d2 = 右 | bb2 = 1px solid lightgray
| g3 = x | t3 = 南港島綫轉乘通道 · 洗手間
| g4 = p | p4 = split-dn | d4 = 右 | bt4 = 1px solid lightgray
| g5 = tlf | l5 = 東鐵 | t5 = 落客月台 | p5 = 8
}}
| floor8 = L6 | label8 = 南港島綫月台
| content8 = {{ 月台配置 | system = MTR
| g1 = tl | l1 = 南港島 | d1 = 海怡半島 | n1 = 海洋公園 | p1 = 6
| g2 = p | p2 = island | d2 = 上右下左<!-- 進站時車門開啟方向 -->
| g3 = tl | l3 = 南港島 | d3 = 海怡半島 | n3 = 海洋公園 | p3 = 5
}}
| floor9 = L7 | label9 = 機房層
| content9 = (僅供職員使用,不開放予公眾)
}}
顯示效果為:
U1 | 金鐘廊 | 行人天橋、E出口(因工程暫時停用) |
G | 地面 | A、B、C、D出口 |
L1 | 大堂 | F出口、商店、客務中心、自動售票設施、自動櫃員機、數碼服務站、旅客服務、iCentre、失物及乘車優惠辦事處、警崗、洗手間 |
L2 | 港島綫、荃灣綫 上層月台 | |
L3 | 港島綫、荃灣綫 下層月台 | |
L4 | 轉車大堂 | 往返新舊月台之通道 |
L5 | 未來東鐵綫月台、 轉乘通道 | |
L6 | 南港島綫月台 | |
L7 | 機房層 | (僅供職員使用,不開放予公眾) |
進階示例
{{ 车站构造
| 层1 = 地下一层 | 标1 = 共用站厅<br><small>{{广州地铁路线标志|1|S}} {{广州地铁路线标志|2|S}}</small>
| 文1 = 售票机、客务中心、商店、警务室、母婴室、安检设施
| 层2 = 地下二层 | span2 = 2
| 标2 = 北站厅<br><small>{{广州地铁路线标志|2|S}}</small>
| 文2 = 售票机、客务中心、安检设施
| 标3 = {{广州地铁路线链接|1}}站台
| 文3 = {{ 站台配置 | 系统 = 广州地铁 | 进阶 = 是
| 组1 = p | 类1 = 侧下 | 文1 = 祇供下車
| 组2 = tl | 线2 = 1 | 往2 = 西塱 | 下站2 = 西门口 | 上台2 = 4 | 下台2 = 2
| 组3 = p | 类3 = 岛 | 文3 = 祇供上車
| 组4 = tr | 线4 = 1 | 往4 = 广州东站 | 下站4 = 农讲所 | 上台4 = 1 | 下台4 = 3
| 组5 = p | 类5 = 侧上 | 文5 = 祇供下車
}}
| 层4 = 地下三層 | 标4 = {{广州地铁路线链接|2}}站台
| 文4 = {{ 站台配置 | 系统 = 广州地铁 | 进阶 = 是
| 组1 = x | 文1 = 付费区出口往动漫星城
| 组2 = p | 类2 = 侧下 | 文2 = 祇供下車 | bt2 = 2px dashed lightgray
| 组3 = tl | 线3 = 2 | 往3 = 嘉禾望岗 | 下站3 = 纪念堂 | 上台3 = 7 | 下台3 = 5
| 组4 = p | 类4 = 岛 | 文4 = 祇供上車
| 组5 = tr | 线5 = 2 | 往5 = 广州南站 | 下站5 = 海珠广场 | 上台5 = 6 | 下台5 = 8
| 组6 = p | 类6 = 侧上 | 文6 = 祇供下車 | bb6 = 2px dashed lightgray
| 组7 = x | 文7 = 付费区出口往动漫星城
}}
}}
显示效果为:
地下一层 | 共用站厅 1号线 2号线 | 售票机、客务中心、商店、警务室、母婴室、安检设施 |
地下二层 | 北站厅 2号线 | 售票机、客务中心、安检设施 |
█1号线站台 | |
地下三層 | █2号线站台 | |
{{ 車站構造
| 層1 = L2 | 標1 = 入境大堂/<br/>票務大堂
| 文1 = {{spml|客務中心|自助售票機|洗手間|香港入境事務處及香港海關檢查(香港居民)|車站商店|自動櫃員機|數碼服務站|旅客諮詢及服務中心|港鐵旅遊}}
| 層2 = L1 | span2 = 2
| 標2 = 行人天橋
| 文2 = 深圳羅湖聯檢大樓而來人流,走至橋盡頭後香港居民乘電梯往上一層,非香港居民往左走,分流入境
| 標3 = 入境大堂
| 文3 = {{spml|香港入境事務處及香港海關檢查(非香港居民)|報案中心(設於夾層)}}
| 層4 = G | span4 = 4
| 標4 = 行人天橋
| 文4 = 往深圳羅湖聯檢大樓
| 標5 = 離境大堂
| 文5 = {{spml|A出口|客務中心|洗手間|香港入境事務處及香港海關檢查|羅湖居民通道|車站商店|鐵路免稅店|自動售賣機|數碼服務站}}
| 標6 = 月台<br/>[[File:BSicon numN090.svg|30px|link=]]
| 文6 = {{ 月台配置 | 系統 = 港鐵 | 進階 = 是
| 組1 = 軌 | 文1 = [[城際直通車]]路軌 | 左箭1 = L | 右箭1 = R | ap1 = {{small|往深圳 →}}
| 組2 = 台 | 類2 = 側下 | 門2 = 右 | 文2 = 只供上客 | 上邊框2 = 4px solid black
| 組3 = 軌 | 綫3 = 東鐵 | 往3 = 紅磡 | 下站3 = 上水 | 左箭3 = L | 上台3 = 1 | 右箭3 = / | 下台3 = 2
| ap3 = {{small|往深圳 →}}
| 組4 = 台 | 類4 = 灣 | 門4 = 上右下左
| 文4 = 只供落客 | 右邊框4 = 2px dashed lightgray
| ap4s = font-size:90%;border-top:2px solid black;text-align:center | ap4 = 離境大堂
| 組5 = 軌 | 綫5 = 東鐵 | 往5 = 紅磡 | 下站5 = 上水 | 左箭5 = L | 下台5 = 4 | 右箭5 = / | 上台5 = 3
| ap5s = border-left:4px solid black
| ap6s = border-left:4px solid black
| 組6 = 台 | 類6 = 側上 | 門6 = 左 | 文6 = 只供上客
| 右邊框6 = 2px solid black | 下邊框6 = none
}}
| 文7 = A出口行人隧道
}}
顯示效果為:
L2 | 入境大堂/ 票務大堂 | 客務中心、自助售票機、洗手間、香港入境事務處及香港海關檢查(香港居民)、車站商店、自動櫃員機、數碼服務站、旅客諮詢及服務中心、港鐵旅遊 |
L1 | 行人天橋 | 深圳羅湖聯檢大樓而來人流,走至橋盡頭後香港居民乘電梯往上一層,非香港居民往左走,分流入境 |
入境大堂 | 香港入境事務處及香港海關檢查(非香港居民)、報案中心(設於夾層) |
G | 行人天橋 | 往深圳羅湖聯檢大樓 |
離境大堂 | A出口、客務中心、洗手間、香港入境事務處及香港海關檢查、羅湖居民通道、車站商店、鐵路免稅店、自動售賣機、數碼服務站 |
月台
| |
A出口行人隧道 |
參見
local getArgs = require('Module:Arguments').getArgs;
local tools = require 'Module:TableTools'
local p = {}
function p.main(frame)
local args = getArgs(frame)
return p._main(frame, args)
end
function p._main(frame, args)
local out = mw.html.create 'table'
:addClass 'station-structure-table'
:addClass(args.class)
:cssText(args.style)
-- :css('border-collapse', 'collapse')
-- :attr('cellpadding', '5')
local span_now = 0
local numData = tools.numData(args)
for i, item in tools.sparseIpairs(numData) do
local floor = item.floor or item.f or item['層'] or item['层']
local span = tonumber( item.span or (floor and 1 or 0) )
local label = item.label or item.l or item['標'] or item['标']
local content = item.content or item.c or item['文'] or ''
span_now = span_now > 0 and span_now or span
if span_now > 0 then
local tr = out
:tag 'tr'
:addClass 'station-structure-table-row'
-- :cssText("vertical-align:middle;border:solid gray;border-width:1px 0;")
if floor then
tr:tag 'td'
:attr('rowspan', span)
:addClass 'station-structure-floor'
:wikitext(floor)
end
if label then
tr:tag 'td':addClass 'station-structure-label':wikitext(label) end
local cc = tr:tag 'td':addClass 'station-structure-content':wikitext(content)
:attr('colspan', (not label) and '2' or nil)
if string.find(content, "station%-structure%-platform") then cc:addClass 'station-structure-platform-cell' end
end
span_now = span_now - 1
end
out:wikitext(frame:extensionTag {name = 'templatestyles', args = {src = 'Template:車站構造/style.css'}})
return out
end
return p