STANDING ORDER: make the blueprints one coherent building
Eight sheets laid out to match the section: north to the left, Level 1 lobby to sick bay, Level 2 creche to plant, an incline to the pit galleries, and every corridor end naming the sheet it reaches. Rooms now share walls (the corridor gap had doors opening onto rock); adds an armoury, a pipe room beside the plant, and a Vigil hall sized for 999 standing. bellhouse-plans.mjs --check holds doors, swings, furniture, lettering and reachability, and runs in npm run check. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
@@ -161,7 +161,7 @@
|
||||
<text x="1240" y="1480">11 · Pipe room — Centre's in-tray</text>
|
||||
<text x="1240" y="1518">12 · Plant floor — boilers, coal face, transmitter</text>
|
||||
<text x="1240" y="1556">13 · Vigil hall *</text>
|
||||
<text x="1240" y="1594">14 · Allotments and Buffer Depot *</text>
|
||||
<text x="1240" y="1594">14 · Vegetable tunnels and Buffer Depot *</text>
|
||||
<text x="1240" y="1632">15 · The Sump *</text>
|
||||
<text x="720" y="1584" class="note">* pit galleries, not drawn</text>
|
||||
</g>
|
||||
|
||||
|
Before Width: | Height: | Size: 8.7 KiB After Width: | Height: | Size: 8.7 KiB |
|
Before Width: | Height: | Size: 182 KiB After Width: | Height: | Size: 184 KiB |
@@ -6,6 +6,7 @@
|
||||
.rm2 { fill:#11417d; stroke:#e8f1fb; stroke-width:5; }
|
||||
.rock { fill:#0e3668; stroke:#9fbde0; stroke-width:4; stroke-dasharray:18 10; }
|
||||
.gap { stroke:#154a8a; stroke-width:12; }
|
||||
.gap2 { stroke:#11417d; stroke-width:12; }
|
||||
.rgap { stroke:#0e3668; stroke-width:12; }
|
||||
.swing { fill:none; stroke:#e8f1fb; stroke-width:3; }
|
||||
.fur { fill:#1b579c; stroke:#cfe0f3; stroke-width:3; }
|
||||
@@ -19,6 +20,7 @@
|
||||
.lbl { font-family:'Courier New',Courier,monospace; font-weight:700; font-size:30px;
|
||||
fill:#f4f8fd; letter-spacing:2px; }
|
||||
.sub { font-family:'Courier New',Courier,monospace; font-size:21px; fill:#b9d0ea; }
|
||||
.exit { font-weight:700; fill:#e8f1fb; }
|
||||
.fl { font-family:'Courier New',Courier,monospace; font-size:18px; fill:#e8f1fb;
|
||||
text-anchor:middle; }
|
||||
.ttl { font-family:'Courier New',Courier,monospace; font-weight:700; font-size:34px;
|
||||
@@ -33,111 +35,118 @@
|
||||
</defs>
|
||||
<rect width="2800" height="2000" fill="#123f78"/>
|
||||
<path d="M100 0V2000M200 0V2000M300 0V2000M400 0V2000M500 0V2000M600 0V2000M700 0V2000M800 0V2000M900 0V2000M1000 0V2000M1100 0V2000M1200 0V2000M1300 0V2000M1400 0V2000M1500 0V2000M1600 0V2000M1700 0V2000M1800 0V2000M1900 0V2000M2000 0V2000M2100 0V2000M2200 0V2000M2300 0V2000M2400 0V2000M2500 0V2000M2600 0V2000M2700 0V2000M0 100H2800M0 200H2800M0 300H2800M0 400H2800M0 500H2800M0 600H2800M0 700H2800M0 800H2800M0 900H2800M0 1000H2800M0 1100H2800M0 1200H2800M0 1300H2800M0 1400H2800M0 1500H2800M0 1600H2800M0 1700H2800M0 1800H2800M0 1900H2800" class="grid"/>
|
||||
<rect x="50" y="100" width="2700" height="200" class="rm2"/>
|
||||
<text x="80" y="225" class="lbl">MAIN CORRIDOR</text>
|
||||
<rect x="100" y="400" width="1200" height="900" class="rm"/>
|
||||
<rect x="50" y="100" width="2700" height="300" class="rm2"/>
|
||||
<text x="1150" y="230" class="lbl">MAIN CORRIDOR</text>
|
||||
<line x1="100" y1="340" x2="15" y2="340" class="arw" marker-end="url(#ah)"/>
|
||||
<text x="20" y="60" class="sub exit">← LOBBY · SHEET 1</text>
|
||||
<line x1="2700" y1="340" x2="2785" y2="340" class="arw" marker-end="url(#ah)"/>
|
||||
<text x="2523" y="60" class="sub exit">REGISTRY · SHEET 3 →</text>
|
||||
<rect x="100" y="400" width="1300" height="900" class="rm"/>
|
||||
<text x="130" y="475" class="lbl">CONTROL ROOM</text>
|
||||
<text x="130" y="513" class="sub">Controller's floor</text>
|
||||
<circle cx="1255" cy="445" r="30" class="numc"/><text x="1255" y="458" class="num">7</text>
|
||||
<rect x="180" y="550" width="1040" height="90" class="fur"/>
|
||||
<text x="700" y="602" class="fl" font-size="20">CONSOLE · DIALS · TANNOY DESK</text>
|
||||
<rect x="250" y="660" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="390" y="660" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="530" y="660" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="670" y="660" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="810" y="660" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="950" y="660" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="1090" y="660" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="350" y="800" width="600" height="260" class="fur"/>
|
||||
<text x="650" y="937" class="fl" font-size="20">SITUATION MAP · REGION 12</text>
|
||||
<rect x="380" y="740" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="560" y="740" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="740" y="740" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="380" y="1080" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="560" y="1080" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="740" y="1080" width="34" height="34" rx="6" class="fur"/>
|
||||
<circle cx="1140" cy="1140" r="55" class="fur"/>
|
||||
<text x="1140" y="1147" class="fl" font-size="18">SCOPE</text>
|
||||
<text x="980" y="1260" class="pen" transform="rotate(-2 980 1260)">SEALED 1974 — by order</text>
|
||||
<circle cx="1355" cy="445" r="30" class="numc"/><text x="1355" y="458" class="num">7</text>
|
||||
<rect x="160" y="560" width="1180" height="90" class="fur"/>
|
||||
<text x="750" y="612" class="fl" font-size="20">CONSOLE · DIALS · TANNOY DESK</text>
|
||||
<rect x="240" y="665" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="380" y="665" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="520" y="665" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="660" y="665" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="800" y="665" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="940" y="665" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="1080" y="665" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="1220" y="665" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="350" y="810" width="600" height="250" class="fur"/>
|
||||
<text x="650" y="942" class="fl" font-size="20">SITUATION MAP · REGION 12</text>
|
||||
<rect x="390" y="750" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="390" y="1080" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="630" y="750" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="630" y="1080" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="870" y="750" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="870" y="1080" width="34" height="34" rx="6" class="fur"/>
|
||||
<circle cx="1230" cy="1150" r="55" class="fur"/>
|
||||
<text x="1230" y="1157" class="fl" font-size="18">SCOPE</text>
|
||||
<text x="900" y="1270" class="pen" transform="rotate(-2 900 1270)">SEALED 1974 — by order</text>
|
||||
<rect x="1400" y="400" width="600" height="500" class="rm"/>
|
||||
<text x="1430" y="475" class="lbl">CONTROLLER</text>
|
||||
<text x="1430" y="513" class="sub">E. Sowerby</text>
|
||||
<rect x="1520" y="580" width="240" height="110" class="fur"/>
|
||||
<text x="1640" y="642" class="fl" font-size="20">DESK</text>
|
||||
<rect x="1610" y="710" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="1910" y="460" width="70" height="380" class="fur"/>
|
||||
<path d="M1910 485H1980M1910 510H1980M1910 535H1980M1910 560H1980M1910 585H1980M1910 610H1980M1910 635H1980M1910 660H1980M1910 685H1980M1910 710H1980M1910 735H1980M1910 760H1980M1910 785H1980M1910 810H1980M1910 835H1980" class="fine"/>
|
||||
<text x="1740" y="870" class="sub" >letters from Centre</text>
|
||||
<rect x="1620" y="710" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="1910" y="430" width="70" height="360" class="fur"/>
|
||||
<path d="M1910 455H1980M1910 480H1980M1910 505H1980M1910 530H1980M1910 555H1980M1910 580H1980M1910 605H1980M1910 630H1980M1910 655H1980M1910 680H1980M1910 705H1980M1910 730H1980M1910 755H1980M1910 780H1980" class="fine"/>
|
||||
<text x="1730" y="860" class="sub">files · Centre</text>
|
||||
<rect x="1400" y="900" width="600" height="600" class="rm"/>
|
||||
<text x="1430" y="975" class="lbl">STUDIO</text>
|
||||
<text x="1430" y="1013" class="sub">broadcast · 1962</text>
|
||||
<rect x="1460" y="1060" width="200" height="120" class="fur"/>
|
||||
<circle cx="1510" cy="1110" r="32" class="fine"/>
|
||||
<circle cx="1610" cy="1110" r="32" class="fine"/>
|
||||
<text x="1560" y="1172" class="fl" font-size="15">TAPE DECK</text>
|
||||
<rect x="1860" y="1020" width="80" height="80" class="fur"/>
|
||||
<path d="M1860 1020l80 80M1940 1020l-80 80" class="fine"/>
|
||||
<text x="1900" y="1135" class="fl" font-size="16">SAFE</text>
|
||||
<rect x="1500" y="1260" width="260" height="90" class="fur"/>
|
||||
<text x="1630" y="1312" class="fl" font-size="20">MIXER</text>
|
||||
<rect x="1590" y="1370" width="34" height="34" rx="6" class="fur"/>
|
||||
<circle cx="1880" cy="1360" r="30" class="fur"/>
|
||||
<text x="1880" y="1367" class="fl" font-size="18">MIC</text>
|
||||
<text x="1430" y="1470" class="pen" transform="rotate(-1 1430 1470)">new tape rec'd from Centre 2019</text>
|
||||
<rect x="2100" y="400" width="600" height="500" class="rm"/>
|
||||
<text x="2130" y="475" class="lbl">PIPE ROOM</text>
|
||||
<text x="2130" y="513" class="sub">Centre's in-tray</text>
|
||||
<circle cx="2655" cy="445" r="30" class="numc"/><text x="2655" y="458" class="num">11</text>
|
||||
<circle cx="2400" cy="660" r="55" class="fur"/>
|
||||
<text x="2400" y="667" class="fl" font-size="18">PIPE</text>
|
||||
<rect x="2150" y="610" width="180" height="80" class="fur"/>
|
||||
<text x="2240" y="657" class="fl" font-size="20">IN-TRAY</text>
|
||||
<text x="2140" y="870" class="pen" transform="rotate(-2 2140 870)">every 90 days</text>
|
||||
<rect x="2100" y="900" width="600" height="600" class="rm"/>
|
||||
<text x="2130" y="975" class="lbl">COMMS</text>
|
||||
<text x="2130" y="1013" class="sub">teleprinters · switchboard</text>
|
||||
<rect x="2160" y="1080" width="130" height="100" class="fur"/>
|
||||
<text x="2225" y="1137" class="fl" font-size="20">TP</text>
|
||||
<rect x="2320" y="1080" width="130" height="100" class="fur"/>
|
||||
<text x="2385" y="1137" class="fl" font-size="20">TP</text>
|
||||
<rect x="2160" y="1260" width="480" height="90" class="fur"/>
|
||||
<text x="2400" y="1312" class="fl" font-size="20">SWITCHBOARD</text>
|
||||
<rect x="2230" y="1380" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="2430" y="1380" width="34" height="34" rx="6" class="fur"/>
|
||||
<text x="2460" y="1060" class="pen" transform="rotate(4 2460 1060)">no line out</text>
|
||||
<line x1="300" y1="400" x2="400" y2="400" class="gap"/>
|
||||
<path d="M300 400L300 300A100 100 0 0 1 400 400" class="swing"/>
|
||||
<line x1="1600" y1="400" x2="1700" y2="400" class="gap"/>
|
||||
<path d="M1600 400L1600 300A100 100 0 0 1 1700 400" class="swing"/>
|
||||
<line x1="2300" y1="400" x2="2400" y2="400" class="gap"/>
|
||||
<path d="M2300 400L2300 300A100 100 0 0 1 2400 400" class="swing"/>
|
||||
<line x1="1400" y1="1100" x2="1400" y2="1200" class="gap"/>
|
||||
<path d="M1400 1100L1300 1100A100 100 0 0 0 1400 1200" class="swing"/>
|
||||
<line x1="1480" y1="900" x2="1580" y2="900" class="gap"/>
|
||||
<path d="M1480 900L1480 800A100 100 0 0 1 1580 900" class="swing"/>
|
||||
<line x1="2350" y1="900" x2="2450" y2="900" class="gap"/>
|
||||
<path d="M2350 900L2350 800A100 100 0 0 1 2450 900" class="swing"/>
|
||||
<rect x="1560" y="1070" width="200" height="120" class="fur"/>
|
||||
<circle cx="1610" cy="1120" r="32" class="fine"/>
|
||||
<circle cx="1710" cy="1120" r="32" class="fine"/>
|
||||
<text x="1660" y="1182" class="fl" font-size="15">TAPE DECK</text>
|
||||
<rect x="1890" y="925" width="80" height="80" class="fur"/>
|
||||
<path d="M1890 925l80 80M1970 925l-80 80" class="fine"/>
|
||||
<text x="1930" y="1035" class="fl" font-size="16">SAFE</text>
|
||||
<rect x="1520" y="1260" width="260" height="90" class="fur"/>
|
||||
<text x="1650" y="1312" class="fl" font-size="20">MIXER</text>
|
||||
<rect x="1630" y="1370" width="34" height="34" rx="6" class="fur"/>
|
||||
<circle cx="1920" cy="1370" r="30" class="fur"/>
|
||||
<text x="1920" y="1377" class="fl" font-size="18">MIC</text>
|
||||
<text x="1430" y="1475" class="pen" transform="rotate(-1 1430 1475)">new tape rec'd from Centre 2019</text>
|
||||
<rect x="2000" y="400" width="750" height="500" class="rm"/>
|
||||
<text x="2030" y="475" class="lbl">SECRETARIAT</text>
|
||||
<text x="2030" y="513" class="sub">minutes · rotas</text>
|
||||
<rect x="2060" y="610" width="160" height="80" class="fur"/>
|
||||
<rect x="2120" y="710" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="2280" y="610" width="160" height="80" class="fur"/>
|
||||
<rect x="2340" y="710" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="2500" y="610" width="160" height="80" class="fur"/>
|
||||
<rect x="2560" y="710" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="2040" y="820" width="300" height="55" class="fur"/>
|
||||
<path d="M2065 820V875M2090 820V875M2115 820V875M2140 820V875M2165 820V875M2190 820V875M2215 820V875M2240 820V875M2265 820V875M2290 820V875M2315 820V875" class="fine"/>
|
||||
<rect x="2000" y="900" width="750" height="600" class="rm"/>
|
||||
<text x="2030" y="975" class="lbl">COMMS</text>
|
||||
<text x="2030" y="1013" class="sub">teleprinters · switchboard</text>
|
||||
<rect x="2100" y="1090" width="130" height="100" class="fur"/>
|
||||
<text x="2165" y="1147" class="fl" font-size="20">TP</text>
|
||||
<rect x="2270" y="1090" width="130" height="100" class="fur"/>
|
||||
<text x="2335" y="1147" class="fl" font-size="20">TP</text>
|
||||
<rect x="2060" y="1270" width="500" height="90" class="fur"/>
|
||||
<text x="2310" y="1322" class="fl" font-size="20">SWITCHBOARD</text>
|
||||
<rect x="2160" y="1390" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="2360" y="1390" width="34" height="34" rx="6" class="fur"/>
|
||||
<text x="2440" y="1130" class="pen" transform="rotate(4 2440 1130)">no line out</text>
|
||||
<line x1="220" y1="400" x2="320" y2="400" class="gap"/>
|
||||
<path d="M220 400L220 300A100 100 0 0 1 320 400" class="swing"/>
|
||||
<line x1="1480" y1="400" x2="1580" y2="400" class="gap"/>
|
||||
<path d="M1480 400L1480 300A100 100 0 0 1 1580 400" class="swing"/>
|
||||
<line x1="2580" y1="400" x2="2680" y2="400" class="gap"/>
|
||||
<path d="M2580 400L2580 300A100 100 0 0 1 2680 400" class="swing"/>
|
||||
<line x1="1400" y1="1160" x2="1400" y2="1260" class="gap"/>
|
||||
<path d="M1400 1160L1300 1160A100 100 0 0 0 1400 1260" class="swing"/>
|
||||
<line x1="1440" y1="900" x2="1530" y2="900" class="gap"/>
|
||||
<path d="M1440 900L1440 810A90 90 0 0 1 1530 900" class="swing"/>
|
||||
<line x1="2610" y1="900" x2="2710" y2="900" class="gap"/>
|
||||
<path d="M2610 900L2610 800A100 100 0 0 1 2710 900" class="swing"/>
|
||||
|
||||
<rect x="100" y="1560" width="640" height="380" fill="#0f3a70" stroke="#e8f1fb" stroke-width="3"/>
|
||||
<text x="124" y="1604" class="tb" font-weight="700">KEY</text>
|
||||
<path d="M130 1640L130 1710A70 70 0 0 0 200 1640" class="swing"/>
|
||||
<line x1="130" y1="1640" x2="200" y2="1640" stroke="#e8f1fb" stroke-width="7"/>
|
||||
<text x="230" y="1680" class="tb">DOOR</text>
|
||||
<circle cx="460" cy="1670" r="26" class="numc"/>
|
||||
<text x="460" y="1682" class="num" font-size="30">7</text>
|
||||
<text x="500" y="1680" class="tb">LOCATION No.</text>
|
||||
<text x="130" y="1760" class="pen" font-size="25">pencil</text>
|
||||
<text x="230" y="1760" class="tb">= AMENDED AT THE SEAT, 1974–2026</text>
|
||||
<rect x="130" y="1792" width="70" height="44" class="rock"/>
|
||||
<text x="230" y="1822" class="tb">= UNLINED MINE WORKINGS</text>
|
||||
<text x="130" y="1890" class="tb">1 SQUARE = 5 FT · N ↑</text>
|
||||
<rect x="30" y="1610" width="640" height="380" fill="#0f3a70" stroke="#e8f1fb" stroke-width="3"/>
|
||||
<text x="54" y="1654" class="tb" font-weight="700">KEY</text>
|
||||
<path d="M60 1690L60 1760A70 70 0 0 0 130 1690" class="swing"/>
|
||||
<line x1="60" y1="1690" x2="130" y2="1690" stroke="#e8f1fb" stroke-width="7"/>
|
||||
<text x="160" y="1730" class="tb">DOOR</text>
|
||||
<circle cx="390" cy="1720" r="26" class="numc"/>
|
||||
<text x="390" y="1732" class="num" font-size="30">7</text>
|
||||
<text x="430" y="1730" class="tb">LOCATION No.</text>
|
||||
<text x="60" y="1810" class="pen" font-size="25">pencil</text>
|
||||
<text x="160" y="1810" class="tb">= AMENDED AT THE SEAT, 1974–2026</text>
|
||||
<rect x="60" y="1842" width="70" height="44" class="rock"/>
|
||||
<text x="160" y="1872" class="tb">= UNLINED MINE WORKINGS</text>
|
||||
<text x="60" y="1940" class="tb">1 SQUARE = 5 FT · NORTH ←</text>
|
||||
|
||||
<rect x="1900" y="1650" width="870" height="330" fill="#0f3a70" stroke="#e8f1fb" stroke-width="5"/>
|
||||
<line x1="1900" y1="1760" x2="2770" y2="1760" stroke="#e8f1fb" stroke-width="3"/>
|
||||
<line x1="1900" y1="1900" x2="2770" y2="1900" stroke="#e8f1fb" stroke-width="3"/>
|
||||
<text x="1924" y="1694" class="tb">REGIONAL SEAT OF GOVERNMENT 12 · BELLHOUSE</text>
|
||||
<text x="1924" y="1738" class="tb">SHEET 2 OF 7 · LEVEL 2 · GOVERNMENT</text>
|
||||
<text x="1924" y="1738" class="tb">SHEET 2 OF 8 · LEVEL 1 · GOVERNMENT</text>
|
||||
<text x="1924" y="1815" class="ttl">CONTROL ROOM</text>
|
||||
<text x="1924" y="1866" class="tb">SCALE: ONE SQUARE = 5 FT</text>
|
||||
<text x="1924" y="1866" class="tb">SCALE: ONE SQUARE = 5 FT · SECTION: SO-H04</text>
|
||||
<text x="1924" y="1950" class="tb">DRG RSG12/02 · ISSUED 1962 · COPY NOT TO LEAVE THE SEAT</text>
|
||||
</svg>
|
||||
|
||||
|
Before Width: | Height: | Size: 9.6 KiB After Width: | Height: | Size: 10 KiB |
|
Before Width: | Height: | Size: 109 KiB After Width: | Height: | Size: 111 KiB |
@@ -6,6 +6,7 @@
|
||||
.rm2 { fill:#11417d; stroke:#e8f1fb; stroke-width:5; }
|
||||
.rock { fill:#0e3668; stroke:#9fbde0; stroke-width:4; stroke-dasharray:18 10; }
|
||||
.gap { stroke:#154a8a; stroke-width:12; }
|
||||
.gap2 { stroke:#11417d; stroke-width:12; }
|
||||
.rgap { stroke:#0e3668; stroke-width:12; }
|
||||
.swing { fill:none; stroke:#e8f1fb; stroke-width:3; }
|
||||
.fur { fill:#1b579c; stroke:#cfe0f3; stroke-width:3; }
|
||||
@@ -19,6 +20,7 @@
|
||||
.lbl { font-family:'Courier New',Courier,monospace; font-weight:700; font-size:30px;
|
||||
fill:#f4f8fd; letter-spacing:2px; }
|
||||
.sub { font-family:'Courier New',Courier,monospace; font-size:21px; fill:#b9d0ea; }
|
||||
.exit { font-weight:700; fill:#e8f1fb; }
|
||||
.fl { font-family:'Courier New',Courier,monospace; font-size:18px; fill:#e8f1fb;
|
||||
text-anchor:middle; }
|
||||
.ttl { font-family:'Courier New',Courier,monospace; font-weight:700; font-size:34px;
|
||||
@@ -33,8 +35,16 @@
|
||||
</defs>
|
||||
<rect width="2800" height="2000" fill="#123f78"/>
|
||||
<path d="M100 0V2000M200 0V2000M300 0V2000M400 0V2000M500 0V2000M600 0V2000M700 0V2000M800 0V2000M900 0V2000M1000 0V2000M1100 0V2000M1200 0V2000M1300 0V2000M1400 0V2000M1500 0V2000M1600 0V2000M1700 0V2000M1800 0V2000M1900 0V2000M2000 0V2000M2100 0V2000M2200 0V2000M2300 0V2000M2400 0V2000M2500 0V2000M2600 0V2000M2700 0V2000M0 100H2800M0 200H2800M0 300H2800M0 400H2800M0 500H2800M0 600H2800M0 700H2800M0 800H2800M0 900H2800M0 1000H2800M0 1100H2800M0 1200H2800M0 1300H2800M0 1400H2800M0 1500H2800M0 1600H2800M0 1700H2800M0 1800H2800M0 1900H2800" class="grid"/>
|
||||
<rect x="50" y="100" width="2700" height="200" class="rm2"/>
|
||||
<text x="80" y="225" class="lbl">WELFARE CORRIDOR</text>
|
||||
<rect x="50" y="100" width="2400" height="300" class="rm2"/>
|
||||
<text x="950" y="230" class="lbl">LOWER CORRIDOR</text>
|
||||
<rect x="2450" y="100" width="300" height="300" class="rm2"/>
|
||||
<path d="M2450 130H2750M2450 160H2750M2450 190H2750M2450 220H2750M2450 250H2750M2450 280H2750M2450 310H2750M2450 340H2750M2450 370H2750" class="fine"/>
|
||||
<rect x="2578" y="232" width="44" height="30" fill="#11417d"/>
|
||||
<text x="2600" y="255" class="fl" font-size="19">UP</text>
|
||||
<text x="2060" y="60" class="sub">UP TO LEVEL 1 · SHEET 4</text>
|
||||
<line x1="2450" y1="150" x2="2450" y2="350" class="gap2"/>
|
||||
<line x1="100" y1="340" x2="15" y2="340" class="arw" marker-end="url(#ah)"/>
|
||||
<text x="20" y="60" class="sub exit">← PIPE ROOM & PLANT · SHEET 6</text>
|
||||
<rect x="100" y="400" width="500" height="400" class="rm"/>
|
||||
<text x="130" y="475" class="lbl">CLOAKS</text>
|
||||
<circle cx="130" cy="530" r="7" fill="#e8f1fb"/>
|
||||
@@ -53,7 +63,7 @@
|
||||
<text x="630" y="475" class="lbl">SCHOOLROOM</text>
|
||||
<circle cx="1555" cy="445" r="30" class="numc"/><text x="1555" y="458" class="num">10</text>
|
||||
<rect x="700" y="520" width="500" height="25" class="fur"/>
|
||||
<text x="700" y="590" class="sub" >BLACKBOARD</text>
|
||||
<text x="700" y="590" class="sub">BLACKBOARD</text>
|
||||
<rect x="1280" y="560" width="200" height="90" class="fur"/>
|
||||
<text x="1380" y="612" class="fl" font-size="20">TEACHER</text>
|
||||
<rect x="700" y="690" width="130" height="60" class="fur"/>
|
||||
@@ -69,103 +79,103 @@
|
||||
<rect x="1300" y="810" width="130" height="60" class="fur"/>
|
||||
<rect x="1300" y="930" width="130" height="60" class="fur"/>
|
||||
<text x="1240" y="1070" class="pen" transform="rotate(-2 1240 1070)">atlas: 1971 edition</text>
|
||||
<rect x="1600" y="400" width="1100" height="700" class="rm"/>
|
||||
<rect x="1600" y="400" width="1150" height="700" class="rm"/>
|
||||
<text x="1630" y="475" class="lbl">PLAYROOM</text>
|
||||
<rect x="1620" y="420" width="1060" height="16" fill="#e8f1fb" opacity=".5"/>
|
||||
<text x="1630" y="540" class="sub" >pinned drawings along this wall</text>
|
||||
<rect x="1620" y="420" width="1110" height="16" fill="#e8f1fb" opacity=".5"/>
|
||||
<text x="1630" y="540" class="sub">pinned drawings along this wall</text>
|
||||
<rect x="1800" y="660" width="400" height="260" class="fur"/>
|
||||
<text x="2000" y="797" class="fl" font-size="20">RUG</text>
|
||||
<circle cx="2350" cy="700" r="35" class="fur"/>
|
||||
<circle cx="2540" cy="640" r="35" class="fur"/>
|
||||
<circle cx="2460" cy="880" r="35" class="fur"/>
|
||||
<circle cx="1720" cy="990" r="35" class="fur"/>
|
||||
<rect x="2530" y="960" width="140" height="110" class="fur"/>
|
||||
<text x="2600" y="1020.6" class="fl" font-size="16">TOYS</text>
|
||||
<rect x="2560" y="960" width="140" height="110" class="fur"/>
|
||||
<text x="2630" y="1020.6" class="fl" font-size="16">TOYS</text>
|
||||
<rect x="600" y="1100" width="1400" height="500" class="rm"/>
|
||||
<text x="630" y="1175" class="lbl">DORMITORY</text>
|
||||
<text x="630" y="1213" class="sub">under-twelves</text>
|
||||
<rect x="660" y="1230" width="70" height="130" class="fur"/>
|
||||
<line x1="660" y1="1275" x2="730" y2="1275" class="fine"/>
|
||||
<rect x="660" y="1430" width="70" height="130" class="fur"/>
|
||||
<line x1="660" y1="1475" x2="730" y2="1475" class="fine"/>
|
||||
<rect x="755" y="1230" width="70" height="130" class="fur"/>
|
||||
<line x1="755" y1="1275" x2="825" y2="1275" class="fine"/>
|
||||
<rect x="755" y="1430" width="70" height="130" class="fur"/>
|
||||
<line x1="755" y1="1475" x2="825" y2="1475" class="fine"/>
|
||||
<rect x="850" y="1230" width="70" height="130" class="fur"/>
|
||||
<line x1="850" y1="1275" x2="920" y2="1275" class="fine"/>
|
||||
<rect x="850" y="1430" width="70" height="130" class="fur"/>
|
||||
<line x1="850" y1="1475" x2="920" y2="1475" class="fine"/>
|
||||
<rect x="945" y="1230" width="70" height="130" class="fur"/>
|
||||
<line x1="945" y1="1275" x2="1015" y2="1275" class="fine"/>
|
||||
<rect x="945" y="1430" width="70" height="130" class="fur"/>
|
||||
<line x1="945" y1="1475" x2="1015" y2="1475" class="fine"/>
|
||||
<rect x="1040" y="1230" width="70" height="130" class="fur"/>
|
||||
<line x1="1040" y1="1275" x2="1110" y2="1275" class="fine"/>
|
||||
<rect x="1040" y="1430" width="70" height="130" class="fur"/>
|
||||
<line x1="1040" y1="1475" x2="1110" y2="1475" class="fine"/>
|
||||
<rect x="1135" y="1230" width="70" height="130" class="fur"/>
|
||||
<line x1="1135" y1="1275" x2="1205" y2="1275" class="fine"/>
|
||||
<rect x="1135" y="1430" width="70" height="130" class="fur"/>
|
||||
<line x1="1135" y1="1475" x2="1205" y2="1475" class="fine"/>
|
||||
<rect x="1230" y="1230" width="70" height="130" class="fur"/>
|
||||
<line x1="1230" y1="1275" x2="1300" y2="1275" class="fine"/>
|
||||
<rect x="1230" y="1430" width="70" height="130" class="fur"/>
|
||||
<line x1="1230" y1="1475" x2="1300" y2="1475" class="fine"/>
|
||||
<rect x="1325" y="1230" width="70" height="130" class="fur"/>
|
||||
<line x1="1325" y1="1275" x2="1395" y2="1275" class="fine"/>
|
||||
<rect x="1325" y="1430" width="70" height="130" class="fur"/>
|
||||
<line x1="1325" y1="1475" x2="1395" y2="1475" class="fine"/>
|
||||
<rect x="1420" y="1230" width="70" height="130" class="fur"/>
|
||||
<line x1="1420" y1="1275" x2="1490" y2="1275" class="fine"/>
|
||||
<rect x="1420" y="1430" width="70" height="130" class="fur"/>
|
||||
<line x1="1420" y1="1475" x2="1490" y2="1475" class="fine"/>
|
||||
<rect x="1515" y="1230" width="70" height="130" class="fur"/>
|
||||
<line x1="1515" y1="1275" x2="1585" y2="1275" class="fine"/>
|
||||
<rect x="1515" y="1430" width="70" height="130" class="fur"/>
|
||||
<line x1="1515" y1="1475" x2="1585" y2="1475" class="fine"/>
|
||||
<rect x="1610" y="1230" width="70" height="130" class="fur"/>
|
||||
<line x1="1610" y1="1275" x2="1680" y2="1275" class="fine"/>
|
||||
<rect x="1610" y="1430" width="70" height="130" class="fur"/>
|
||||
<line x1="1610" y1="1475" x2="1680" y2="1475" class="fine"/>
|
||||
<rect x="1705" y="1230" width="70" height="130" class="fur"/>
|
||||
<line x1="1705" y1="1275" x2="1775" y2="1275" class="fine"/>
|
||||
<rect x="1705" y="1430" width="70" height="130" class="fur"/>
|
||||
<line x1="1705" y1="1475" x2="1775" y2="1475" class="fine"/>
|
||||
<rect x="1800" y="1230" width="70" height="130" class="fur"/>
|
||||
<line x1="1800" y1="1275" x2="1870" y2="1275" class="fine"/>
|
||||
<rect x="1800" y="1430" width="70" height="130" class="fur"/>
|
||||
<line x1="1800" y1="1475" x2="1870" y2="1475" class="fine"/>
|
||||
<rect x="1895" y="1230" width="70" height="130" class="fur"/>
|
||||
<line x1="1895" y1="1275" x2="1965" y2="1275" class="fine"/>
|
||||
<rect x="1895" y="1430" width="70" height="130" class="fur"/>
|
||||
<line x1="1895" y1="1475" x2="1965" y2="1475" class="fine"/>
|
||||
<circle cx="1300" cy="1135" r="16" class="fur"/>
|
||||
<path d="M1324 1119a24 24 0 0 1 0 32M1334 1109a38 38 0 0 1 0 52" class="fine"/>
|
||||
<text x="1380" y="1195" class="pen" transform="rotate(-1 1380 1195)">speaker fitted 2019 — 03:00 nightly</text>
|
||||
<rect x="2000" y="1100" width="700" height="500" class="rm"/>
|
||||
<rect x="660" y="1240" width="70" height="130" class="fur"/>
|
||||
<line x1="660" y1="1285" x2="730" y2="1285" class="fine"/>
|
||||
<rect x="660" y="1440" width="70" height="130" class="fur"/>
|
||||
<line x1="660" y1="1485" x2="730" y2="1485" class="fine"/>
|
||||
<rect x="755" y="1240" width="70" height="130" class="fur"/>
|
||||
<line x1="755" y1="1285" x2="825" y2="1285" class="fine"/>
|
||||
<rect x="755" y="1440" width="70" height="130" class="fur"/>
|
||||
<line x1="755" y1="1485" x2="825" y2="1485" class="fine"/>
|
||||
<rect x="850" y="1240" width="70" height="130" class="fur"/>
|
||||
<line x1="850" y1="1285" x2="920" y2="1285" class="fine"/>
|
||||
<rect x="850" y="1440" width="70" height="130" class="fur"/>
|
||||
<line x1="850" y1="1485" x2="920" y2="1485" class="fine"/>
|
||||
<rect x="945" y="1240" width="70" height="130" class="fur"/>
|
||||
<line x1="945" y1="1285" x2="1015" y2="1285" class="fine"/>
|
||||
<rect x="945" y="1440" width="70" height="130" class="fur"/>
|
||||
<line x1="945" y1="1485" x2="1015" y2="1485" class="fine"/>
|
||||
<rect x="1040" y="1240" width="70" height="130" class="fur"/>
|
||||
<line x1="1040" y1="1285" x2="1110" y2="1285" class="fine"/>
|
||||
<rect x="1040" y="1440" width="70" height="130" class="fur"/>
|
||||
<line x1="1040" y1="1485" x2="1110" y2="1485" class="fine"/>
|
||||
<rect x="1135" y="1240" width="70" height="130" class="fur"/>
|
||||
<line x1="1135" y1="1285" x2="1205" y2="1285" class="fine"/>
|
||||
<rect x="1135" y="1440" width="70" height="130" class="fur"/>
|
||||
<line x1="1135" y1="1485" x2="1205" y2="1485" class="fine"/>
|
||||
<rect x="1230" y="1240" width="70" height="130" class="fur"/>
|
||||
<line x1="1230" y1="1285" x2="1300" y2="1285" class="fine"/>
|
||||
<rect x="1230" y="1440" width="70" height="130" class="fur"/>
|
||||
<line x1="1230" y1="1485" x2="1300" y2="1485" class="fine"/>
|
||||
<rect x="1325" y="1240" width="70" height="130" class="fur"/>
|
||||
<line x1="1325" y1="1285" x2="1395" y2="1285" class="fine"/>
|
||||
<rect x="1325" y="1440" width="70" height="130" class="fur"/>
|
||||
<line x1="1325" y1="1485" x2="1395" y2="1485" class="fine"/>
|
||||
<rect x="1420" y="1240" width="70" height="130" class="fur"/>
|
||||
<line x1="1420" y1="1285" x2="1490" y2="1285" class="fine"/>
|
||||
<rect x="1420" y="1440" width="70" height="130" class="fur"/>
|
||||
<line x1="1420" y1="1485" x2="1490" y2="1485" class="fine"/>
|
||||
<rect x="1515" y="1240" width="70" height="130" class="fur"/>
|
||||
<line x1="1515" y1="1285" x2="1585" y2="1285" class="fine"/>
|
||||
<rect x="1515" y="1440" width="70" height="130" class="fur"/>
|
||||
<line x1="1515" y1="1485" x2="1585" y2="1485" class="fine"/>
|
||||
<rect x="1610" y="1240" width="70" height="130" class="fur"/>
|
||||
<line x1="1610" y1="1285" x2="1680" y2="1285" class="fine"/>
|
||||
<rect x="1610" y="1440" width="70" height="130" class="fur"/>
|
||||
<line x1="1610" y1="1485" x2="1680" y2="1485" class="fine"/>
|
||||
<rect x="1705" y="1240" width="70" height="130" class="fur"/>
|
||||
<line x1="1705" y1="1285" x2="1775" y2="1285" class="fine"/>
|
||||
<rect x="1705" y="1440" width="70" height="130" class="fur"/>
|
||||
<line x1="1705" y1="1485" x2="1775" y2="1485" class="fine"/>
|
||||
<rect x="1800" y="1240" width="70" height="130" class="fur"/>
|
||||
<line x1="1800" y1="1285" x2="1870" y2="1285" class="fine"/>
|
||||
<rect x="1800" y="1440" width="70" height="130" class="fur"/>
|
||||
<line x1="1800" y1="1485" x2="1870" y2="1485" class="fine"/>
|
||||
<rect x="1895" y="1240" width="70" height="130" class="fur"/>
|
||||
<line x1="1895" y1="1285" x2="1965" y2="1285" class="fine"/>
|
||||
<rect x="1895" y="1440" width="70" height="130" class="fur"/>
|
||||
<line x1="1895" y1="1485" x2="1965" y2="1485" class="fine"/>
|
||||
<circle cx="1320" cy="1140" r="16" class="fur"/>
|
||||
<path d="M1344 1124a24 24 0 0 1 0 32M1354 1114a38 38 0 0 1 0 52" class="fine"/>
|
||||
<text x="1420" y="1210" class="pen" transform="rotate(-1 1420 1210)">speaker fitted 2019 — 03:00 nightly</text>
|
||||
<rect x="2000" y="1100" width="750" height="500" class="rm"/>
|
||||
<text x="2030" y="1175" class="lbl">WASHROOM</text>
|
||||
<circle cx="2180" cy="1290" r="30" class="fur"/>
|
||||
<circle cx="2300" cy="1290" r="30" class="fur"/>
|
||||
<circle cx="2420" cy="1290" r="30" class="fur"/>
|
||||
<circle cx="2540" cy="1290" r="30" class="fur"/>
|
||||
<circle cx="2660" cy="1290" r="30" class="fur"/>
|
||||
<rect x="2100" y="1400" width="500" height="80" class="fur"/>
|
||||
<text x="2350" y="1447" class="fl" font-size="20">BATHS</text>
|
||||
<line x1="300" y1="400" x2="400" y2="400" class="gap"/>
|
||||
<path d="M300 400L300 300A100 100 0 0 1 400 400" class="swing"/>
|
||||
<circle cx="2200" cy="1290" r="30" class="fur"/>
|
||||
<circle cx="2320" cy="1290" r="30" class="fur"/>
|
||||
<circle cx="2440" cy="1290" r="30" class="fur"/>
|
||||
<circle cx="2560" cy="1290" r="30" class="fur"/>
|
||||
<circle cx="2680" cy="1290" r="30" class="fur"/>
|
||||
<rect x="2140" y="1430" width="500" height="80" class="fur"/>
|
||||
<text x="2390" y="1477" class="fl" font-size="20">BATHS</text>
|
||||
<line x1="380" y1="400" x2="480" y2="400" class="gap"/>
|
||||
<path d="M380 400L380 300A100 100 0 0 1 480 400" class="swing"/>
|
||||
<line x1="600" y1="500" x2="600" y2="600" class="gap"/>
|
||||
<path d="M600 500L700 500A100 100 0 0 1 600 600" class="swing"/>
|
||||
<line x1="1600" y1="640" x2="1600" y2="740" class="gap"/>
|
||||
<path d="M1600 640L1700 640A100 100 0 0 1 1600 740" class="swing"/>
|
||||
<line x1="1040" y1="1100" x2="1140" y2="1100" class="gap"/>
|
||||
<path d="M1040 1100L1040 1200A100 100 0 0 0 1140 1100" class="swing"/>
|
||||
<line x1="280" y1="800" x2="380" y2="800" class="gap"/>
|
||||
<path d="M280 800L280 900A100 100 0 0 0 380 800" class="swing"/>
|
||||
<line x1="960" y1="1100" x2="1060" y2="1100" class="gap"/>
|
||||
<path d="M960 1100L960 1200A100 100 0 0 0 1060 1100" class="swing"/>
|
||||
<line x1="400" y1="800" x2="500" y2="800" class="gap"/>
|
||||
<path d="M400 800L400 900A100 100 0 0 0 500 800" class="swing"/>
|
||||
<line x1="600" y1="1160" x2="600" y2="1260" class="gap"/>
|
||||
<path d="M600 1160L500 1160A100 100 0 0 0 600 1260" class="swing"/>
|
||||
<line x1="2000" y1="1300" x2="2000" y2="1400" class="gap"/>
|
||||
<path d="M2000 1300L2100 1300A100 100 0 0 1 2000 1400" class="swing"/>
|
||||
<line x1="2000" y1="1260" x2="2000" y2="1360" class="gap"/>
|
||||
<path d="M2000 1260L2100 1260A100 100 0 0 1 2000 1360" class="swing"/>
|
||||
|
||||
<rect x="30" y="1610" width="640" height="380" fill="#0f3a70" stroke="#e8f1fb" stroke-width="3"/>
|
||||
<text x="54" y="1654" class="tb" font-weight="700">KEY</text>
|
||||
@@ -179,14 +189,14 @@
|
||||
<text x="160" y="1810" class="tb">= AMENDED AT THE SEAT, 1974–2026</text>
|
||||
<rect x="60" y="1842" width="70" height="44" class="rock"/>
|
||||
<text x="160" y="1872" class="tb">= UNLINED MINE WORKINGS</text>
|
||||
<text x="60" y="1940" class="tb">1 SQUARE = 5 FT · N ↑</text>
|
||||
<text x="60" y="1940" class="tb">1 SQUARE = 5 FT · NORTH ←</text>
|
||||
|
||||
<rect x="1900" y="1650" width="870" height="330" fill="#0f3a70" stroke="#e8f1fb" stroke-width="5"/>
|
||||
<line x1="1900" y1="1760" x2="2770" y2="1760" stroke="#e8f1fb" stroke-width="3"/>
|
||||
<line x1="1900" y1="1900" x2="2770" y2="1900" stroke="#e8f1fb" stroke-width="3"/>
|
||||
<text x="1924" y="1694" class="tb">REGIONAL SEAT OF GOVERNMENT 12 · BELLHOUSE</text>
|
||||
<text x="1924" y="1738" class="tb">SHEET 5 OF 7 · LEVEL 3 · WELFARE</text>
|
||||
<text x="1924" y="1738" class="tb">SHEET 5 OF 8 · LEVEL 2 · WELFARE</text>
|
||||
<text x="1924" y="1815" class="ttl">CRECHE & SCHOOL</text>
|
||||
<text x="1924" y="1866" class="tb">SCALE: ONE SQUARE = 5 FT</text>
|
||||
<text x="1924" y="1866" class="tb">SCALE: ONE SQUARE = 5 FT · SECTION: SO-H04</text>
|
||||
<text x="1924" y="1950" class="tb">DRG RSG12/05 · ISSUED 1962 · COPY NOT TO LEAVE THE SEAT</text>
|
||||
</svg>
|
||||
|
||||
|
Before Width: | Height: | Size: 12 KiB After Width: | Height: | Size: 13 KiB |
|
Before Width: | Height: | Size: 107 KiB After Width: | Height: | Size: 112 KiB |
@@ -6,6 +6,7 @@
|
||||
.rm2 { fill:#11417d; stroke:#e8f1fb; stroke-width:5; }
|
||||
.rock { fill:#0e3668; stroke:#9fbde0; stroke-width:4; stroke-dasharray:18 10; }
|
||||
.gap { stroke:#154a8a; stroke-width:12; }
|
||||
.gap2 { stroke:#11417d; stroke-width:12; }
|
||||
.rgap { stroke:#0e3668; stroke-width:12; }
|
||||
.swing { fill:none; stroke:#e8f1fb; stroke-width:3; }
|
||||
.fur { fill:#1b579c; stroke:#cfe0f3; stroke-width:3; }
|
||||
@@ -19,6 +20,7 @@
|
||||
.lbl { font-family:'Courier New',Courier,monospace; font-weight:700; font-size:30px;
|
||||
fill:#f4f8fd; letter-spacing:2px; }
|
||||
.sub { font-family:'Courier New',Courier,monospace; font-size:21px; fill:#b9d0ea; }
|
||||
.exit { font-weight:700; fill:#e8f1fb; }
|
||||
.fl { font-family:'Courier New',Courier,monospace; font-size:18px; fill:#e8f1fb;
|
||||
text-anchor:middle; }
|
||||
.ttl { font-family:'Courier New',Courier,monospace; font-weight:700; font-size:34px;
|
||||
@@ -33,105 +35,115 @@
|
||||
</defs>
|
||||
<rect width="2800" height="2000" fill="#123f78"/>
|
||||
<path d="M100 0V2000M200 0V2000M300 0V2000M400 0V2000M500 0V2000M600 0V2000M700 0V2000M800 0V2000M900 0V2000M1000 0V2000M1100 0V2000M1200 0V2000M1300 0V2000M1400 0V2000M1500 0V2000M1600 0V2000M1700 0V2000M1800 0V2000M1900 0V2000M2000 0V2000M2100 0V2000M2200 0V2000M2300 0V2000M2400 0V2000M2500 0V2000M2600 0V2000M2700 0V2000M0 100H2800M0 200H2800M0 300H2800M0 400H2800M0 500H2800M0 600H2800M0 700H2800M0 800H2800M0 900H2800M0 1000H2800M0 1100H2800M0 1200H2800M0 1300H2800M0 1400H2800M0 1500H2800M0 1600H2800M0 1700H2800M0 1800H2800M0 1900H2800" class="grid"/>
|
||||
<text x="30" y="60" class="sub" >FROM ADIT (SEALED 1975)</text>
|
||||
<rect x="100" y="600" width="400" height="600" class="rm"/>
|
||||
<text x="130" y="675" class="lbl">BLAST LOCK</text>
|
||||
<text x="130" y="713" class="sub">outer lock</text>
|
||||
<rect x="78" y="800" width="44" height="200" class="blast"/>
|
||||
<path d="M78 820l44 -20M78 840l44 -20M78 860l44 -20M78 880l44 -20M78 900l44 -20M78 920l44 -20M78 940l44 -20M78 960l44 -20M78 980l44 -20M78 1000l44 -20M78 1020l44 -20" class="fine"/>
|
||||
<circle cx="300" cy="1000" r="110" fill="none" stroke="#ffe98a" stroke-width="4" stroke-dasharray="14 10"/>
|
||||
<text x="160" y="1160" class="pen" transform="rotate(-3 160 1160)">air goes wrong here</text>
|
||||
<path d="M78 820l44 -20M78 840l44 -20M78 860l44 -20M78 880l44 -20M78 900l44 -20M78 920l44 -20M78 940l44 -20M78 960l44 -20M78 980l44 -20M78 1000l44 -20" class="fine"/>
|
||||
<circle cx="310" cy="960" r="100" fill="none" stroke="#ffe98a" stroke-width="4" stroke-dasharray="14 10"/>
|
||||
<text x="150" y="1150" class="pen" transform="rotate(-3 150 1150)">air goes wrong here</text>
|
||||
<text x="20" y="760" class="sub">ADIT</text>
|
||||
<rect x="500" y="600" width="400" height="600" class="rm"/>
|
||||
<text x="530" y="675" class="lbl">DECONTAM.</text>
|
||||
<text x="530" y="713" class="sub">showers · lockers</text>
|
||||
<circle cx="600" cy="800" r="30" class="fur"/>
|
||||
<circle cx="600" cy="930" r="30" class="fur"/>
|
||||
<circle cx="600" cy="1060" r="30" class="fur"/>
|
||||
<circle cx="670" cy="840" r="30" class="fur"/>
|
||||
<circle cx="670" cy="960" r="30" class="fur"/>
|
||||
<circle cx="670" cy="1080" r="30" class="fur"/>
|
||||
<rect x="790" y="740" width="80" height="420" class="fur"/>
|
||||
<path d="M790 765H870M790 790H870M790 815H870M790 840H870M790 865H870M790 890H870M790 915H870M790 940H870M790 965H870M790 990H870M790 1015H870M790 1040H870M790 1065H870M790 1090H870M790 1115H870M790 1140H870" class="fine"/>
|
||||
<rect x="900" y="300" width="1000" height="1200" class="rm"/>
|
||||
<text x="930" y="375" class="lbl">LOBBY</text>
|
||||
<text x="930" y="413" class="sub">public waiting</text>
|
||||
<circle cx="1855" cy="345" r="30" class="numc"/><text x="1855" y="358" class="num">6</text>
|
||||
<rect x="1450" y="520" width="380" height="80" class="fur"/>
|
||||
<text x="1640" y="567" class="fl" font-size="20">ENQUIRIES COUNTER</text>
|
||||
<rect x="1750" y="600" width="80" height="240" class="fur"/>
|
||||
<rect x="1000" y="900" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="1000" y="1100" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="1000" y="1300" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="1100" y="900" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="1100" y="1100" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="1100" y="1300" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="1200" y="900" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="1200" y="1100" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="1200" y="1300" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="980" y="840" width="290" height="40" class="fur"/>
|
||||
<rect x="980" y="1040" width="290" height="40" class="fur"/>
|
||||
<rect x="980" y="1240" width="290" height="40" class="fur"/>
|
||||
<rect x="1500" y="1440" width="360" height="35" class="fur"/>
|
||||
<text x="1680" y="1462.4" class="fl" font-size="14">NOTICEBOARD</text>
|
||||
<text x="1460" y="1390" class="pen" transform="rotate(-1 1460 1390)">housing list — see Mr Ogden</text>
|
||||
<rect x="1900" y="300" width="500" height="500" class="rm"/>
|
||||
<rect x="1420" y="500" width="380" height="80" class="fur"/>
|
||||
<text x="1610" y="547" class="fl" font-size="20">ENQUIRIES COUNTER</text>
|
||||
<rect x="1720" y="580" width="80" height="240" class="fur"/>
|
||||
<rect x="1000" y="840" width="290" height="40" class="fur"/>
|
||||
<rect x="1020" y="895" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="1120" y="895" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="1220" y="895" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="1000" y="1040" width="290" height="40" class="fur"/>
|
||||
<rect x="1020" y="1095" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="1120" y="1095" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="1220" y="1095" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="1000" y="1240" width="290" height="40" class="fur"/>
|
||||
<rect x="1020" y="1295" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="1120" y="1295" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="1220" y="1295" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="1400" y="1440" width="360" height="35" class="fur"/>
|
||||
<text x="1580" y="1462.4" class="fl" font-size="14">NOTICEBOARD</text>
|
||||
<text x="1360" y="1390" class="pen" transform="rotate(-1 1360 1390)">housing list — see Mr Ogden</text>
|
||||
<rect x="1900" y="300" width="450" height="450" class="rm"/>
|
||||
<text x="1930" y="375" class="lbl">ENQUIRIES</text>
|
||||
<text x="1930" y="413" class="sub">Mr Ogden</text>
|
||||
<rect x="2000" y="460" width="200" height="100" class="fur"/>
|
||||
<text x="2100" y="517" class="fl" font-size="20">DESK</text>
|
||||
<rect x="2100" y="580" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="2310" y="360" width="70" height="360" class="fur"/>
|
||||
<path d="M2310 385H2380M2310 410H2380M2310 435H2380M2310 460H2380M2310 485H2380M2310 510H2380M2310 535H2380M2310 560H2380M2310 585H2380M2310 610H2380M2310 635H2380M2310 660H2380M2310 685H2380M2310 710H2380" class="fine"/>
|
||||
<circle cx="2030" cy="720" r="25" class="fur"/>
|
||||
<text x="2030" y="727" class="fl" font-size="18">☎</text>
|
||||
<rect x="1900" y="800" width="500" height="400" class="rm"/>
|
||||
<text x="1930" y="875" class="lbl">INTERVIEW</text>
|
||||
<text x="1930" y="913" class="sub">the door does not lock</text>
|
||||
<rect x="2040" y="980" width="220" height="110" class="fur"/>
|
||||
<text x="2150" y="1042" class="fl" font-size="20">TABLE</text>
|
||||
<rect x="2060" y="930" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="2180" y="930" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="2060" y="1100" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="2180" y="1100" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="1900" y="1200" width="500" height="300" class="rm"/>
|
||||
<text x="1930" y="1275" class="lbl">WARDENS' POST</text>
|
||||
<rect x="1940" y="1340" width="250" height="50" class="fur"/>
|
||||
<path d="M1965 1340V1390M1990 1340V1390M2015 1340V1390M2040 1340V1390M2065 1340V1390M2090 1340V1390M2115 1340V1390M2140 1340V1390M2165 1340V1390" class="fine"/>
|
||||
<text x="1940" y="1460" class="sub" >truncheon rack</text>
|
||||
<rect x="1200" y="0" width="300" height="300" class="rm2"/>
|
||||
<text x="1220" y="130" class="lbl" >MAIN</text>
|
||||
<text x="1220" y="190" class="sub" >CORRIDOR</text>
|
||||
<line x1="1350" y1="260" x2="1350" y2="30" class="arw" marker-end="url(#ah)"/>
|
||||
<line x1="500" y1="850" x2="500" y2="950" class="gap"/>
|
||||
<path d="M500 850L600 850A100 100 0 0 1 500 950" class="swing"/>
|
||||
<line x1="900" y1="850" x2="900" y2="950" class="gap"/>
|
||||
<path d="M900 850L1000 850A100 100 0 0 1 900 950" class="swing"/>
|
||||
<line x1="1900" y1="480" x2="1900" y2="580" class="gap"/>
|
||||
<path d="M1900 480L1800 480A100 100 0 0 0 1900 580" class="swing"/>
|
||||
<line x1="1900" y1="920" x2="1900" y2="1020" class="gap"/>
|
||||
<path d="M1900 920L1800 920A100 100 0 0 0 1900 1020" class="swing"/>
|
||||
<line x1="1900" y1="1300" x2="1900" y2="1400" class="gap"/>
|
||||
<path d="M1900 1300L1800 1300A100 100 0 0 0 1900 1400" class="swing"/>
|
||||
<line x1="1250" y1="300" x2="1450" y2="300" class="gap"/>
|
||||
<line x1="50" y1="90" x2="50" y2="550" class="arw" marker-end="url(#ah)"/>
|
||||
<rect x="2020" y="490" width="200" height="100" class="fur"/>
|
||||
<text x="2120" y="547" class="fl" font-size="20">DESK</text>
|
||||
<rect x="2100" y="610" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="2270" y="390" width="60" height="240" class="fur"/>
|
||||
<path d="M2270 415H2330M2270 440H2330M2270 465H2330M2270 490H2330M2270 515H2330M2270 540H2330M2270 565H2330M2270 590H2330M2270 615H2330" class="fine"/>
|
||||
<circle cx="2290" cy="700" r="25" class="fur"/>
|
||||
<text x="2290" y="707" class="fl" font-size="18">☎</text>
|
||||
<rect x="1900" y="750" width="450" height="400" class="rm"/>
|
||||
<text x="1930" y="825" class="lbl">INTERVIEW</text>
|
||||
<text x="1930" y="863" class="sub">does not lock</text>
|
||||
<rect x="2020" y="930" width="220" height="110" class="fur"/>
|
||||
<text x="2130" y="992" class="fl" font-size="20">TABLE</text>
|
||||
<rect x="2040" y="885" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="2170" y="885" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="2040" y="1050" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="2170" y="1050" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="2350" y="300" width="400" height="450" class="rm"/>
|
||||
<text x="2380" y="375" class="lbl">ARMOURY</text>
|
||||
<rect x="2380" y="500" width="340" height="60" class="fur"/>
|
||||
<path d="M2405 500V560M2430 500V560M2455 500V560M2480 500V560M2505 500V560M2530 500V560M2555 500V560M2580 500V560M2605 500V560M2630 500V560M2655 500V560M2680 500V560M2705 500V560" class="fine"/>
|
||||
<text x="2380" y="610" class="sub">arms rack</text>
|
||||
<text x="2380" y="710" class="pen" transform="rotate(-2 2380 710)">key: Controller</text>
|
||||
<rect x="2350" y="750" width="400" height="400" class="rm"/>
|
||||
<text x="2380" y="825" class="lbl">WARDENS'</text>
|
||||
<text x="2380" y="863" class="sub">post</text>
|
||||
<rect x="2400" y="1020" width="240" height="50" class="fur"/>
|
||||
<path d="M2425 1020V1070M2450 1020V1070M2475 1020V1070M2500 1020V1070M2525 1020V1070M2550 1020V1070M2575 1020V1070M2600 1020V1070M2625 1020V1070" class="fine"/>
|
||||
<text x="2400" y="1115" class="sub">truncheons</text>
|
||||
<rect x="1900" y="1150" width="850" height="300" class="rm2"/>
|
||||
<text x="1940" y="1340" class="lbl">MAIN CORRIDOR</text>
|
||||
<line x1="2700" y1="1240" x2="2785" y2="1240" class="arw" marker-end="url(#ah)"/>
|
||||
<text x="1920" y="1505" class="sub exit">CONTROL, REGISTRY, SICK BAY · SHEETS 2–4 →</text>
|
||||
<line x1="500" y1="860" x2="500" y2="960" class="gap"/>
|
||||
<path d="M500 860L600 860A100 100 0 0 1 500 960" class="swing"/>
|
||||
<line x1="900" y1="860" x2="900" y2="960" class="gap"/>
|
||||
<path d="M900 860L1000 860A100 100 0 0 1 900 960" class="swing"/>
|
||||
<line x1="1900" y1="430" x2="1900" y2="530" class="gap"/>
|
||||
<path d="M1900 430L1800 430A100 100 0 0 0 1900 530" class="swing"/>
|
||||
<line x1="1900" y1="890" x2="1900" y2="990" class="gap"/>
|
||||
<path d="M1900 890L1800 890A100 100 0 0 0 1900 990" class="swing"/>
|
||||
<line x1="2660" y1="750" x2="2740" y2="750" class="gap"/>
|
||||
<path d="M2660 750L2660 670A80 80 0 0 1 2740 750" class="swing"/>
|
||||
<line x1="2350" y1="850" x2="2350" y2="930" class="gap"/>
|
||||
<path d="M2350 850L2270 850A80 80 0 0 0 2350 930" class="swing"/>
|
||||
<line x1="2440" y1="1150" x2="2540" y2="1150" class="gap"/>
|
||||
<path d="M2440 1150L2440 1250A100 100 0 0 0 2540 1150" class="swing"/>
|
||||
<line x1="1900" y1="1200" x2="1900" y2="1400" class="gap2"/>
|
||||
|
||||
<rect x="100" y="1560" width="640" height="380" fill="#0f3a70" stroke="#e8f1fb" stroke-width="3"/>
|
||||
<text x="124" y="1604" class="tb" font-weight="700">KEY</text>
|
||||
<path d="M130 1640L130 1710A70 70 0 0 0 200 1640" class="swing"/>
|
||||
<line x1="130" y1="1640" x2="200" y2="1640" stroke="#e8f1fb" stroke-width="7"/>
|
||||
<text x="230" y="1680" class="tb">DOOR</text>
|
||||
<circle cx="460" cy="1670" r="26" class="numc"/>
|
||||
<text x="460" y="1682" class="num" font-size="30">7</text>
|
||||
<text x="500" y="1680" class="tb">LOCATION No.</text>
|
||||
<text x="130" y="1760" class="pen" font-size="25">pencil</text>
|
||||
<text x="230" y="1760" class="tb">= AMENDED AT THE SEAT, 1974–2026</text>
|
||||
<rect x="130" y="1792" width="70" height="44" class="rock"/>
|
||||
<text x="230" y="1822" class="tb">= UNLINED MINE WORKINGS</text>
|
||||
<text x="130" y="1890" class="tb">1 SQUARE = 5 FT · N ↑</text>
|
||||
<rect x="30" y="1610" width="640" height="380" fill="#0f3a70" stroke="#e8f1fb" stroke-width="3"/>
|
||||
<text x="54" y="1654" class="tb" font-weight="700">KEY</text>
|
||||
<path d="M60 1690L60 1760A70 70 0 0 0 130 1690" class="swing"/>
|
||||
<line x1="60" y1="1690" x2="130" y2="1690" stroke="#e8f1fb" stroke-width="7"/>
|
||||
<text x="160" y="1730" class="tb">DOOR</text>
|
||||
<circle cx="390" cy="1720" r="26" class="numc"/>
|
||||
<text x="390" y="1732" class="num" font-size="30">7</text>
|
||||
<text x="430" y="1730" class="tb">LOCATION No.</text>
|
||||
<text x="60" y="1810" class="pen" font-size="25">pencil</text>
|
||||
<text x="160" y="1810" class="tb">= AMENDED AT THE SEAT, 1974–2026</text>
|
||||
<rect x="60" y="1842" width="70" height="44" class="rock"/>
|
||||
<text x="160" y="1872" class="tb">= UNLINED MINE WORKINGS</text>
|
||||
<text x="60" y="1940" class="tb">1 SQUARE = 5 FT · NORTH ←</text>
|
||||
|
||||
<rect x="1900" y="1650" width="870" height="330" fill="#0f3a70" stroke="#e8f1fb" stroke-width="5"/>
|
||||
<line x1="1900" y1="1760" x2="2770" y2="1760" stroke="#e8f1fb" stroke-width="3"/>
|
||||
<line x1="1900" y1="1900" x2="2770" y2="1900" stroke="#e8f1fb" stroke-width="3"/>
|
||||
<text x="1924" y="1694" class="tb">REGIONAL SEAT OF GOVERNMENT 12 · BELLHOUSE</text>
|
||||
<text x="1924" y="1738" class="tb">SHEET 1 OF 7 · LEVEL 1 · ENTRY</text>
|
||||
<text x="1924" y="1738" class="tb">SHEET 1 OF 8 · LEVEL 1 · ENTRY</text>
|
||||
<text x="1924" y="1815" class="ttl">LOBBY & ENQUIRIES</text>
|
||||
<text x="1924" y="1866" class="tb">SCALE: ONE SQUARE = 5 FT</text>
|
||||
<text x="1924" y="1866" class="tb">SCALE: ONE SQUARE = 5 FT · SECTION: SO-H04</text>
|
||||
<text x="1924" y="1950" class="tb">DRG RSG12/01 · ISSUED 1962 · COPY NOT TO LEAVE THE SEAT</text>
|
||||
</svg>
|
||||
|
||||
|
Before Width: | Height: | Size: 9.5 KiB After Width: | Height: | Size: 10 KiB |
|
Before Width: | Height: | Size: 102 KiB After Width: | Height: | Size: 114 KiB |
@@ -0,0 +1,135 @@
|
||||
<svg xmlns="http://www.w3.org/2000/svg" width="2800" height="2000" viewBox="0 0 2800 2000">
|
||||
<!-- STANDING ORDER — PIPE ROOM & PLANT. Generated by tools/bellhouse-plans.mjs; edit that, not this. -->
|
||||
<defs>
|
||||
<style>
|
||||
.rm { fill:#154a8a; stroke:#e8f1fb; stroke-width:7; }
|
||||
.rm2 { fill:#11417d; stroke:#e8f1fb; stroke-width:5; }
|
||||
.rock { fill:#0e3668; stroke:#9fbde0; stroke-width:4; stroke-dasharray:18 10; }
|
||||
.gap { stroke:#154a8a; stroke-width:12; }
|
||||
.gap2 { stroke:#11417d; stroke-width:12; }
|
||||
.rgap { stroke:#0e3668; stroke-width:12; }
|
||||
.swing { fill:none; stroke:#e8f1fb; stroke-width:3; }
|
||||
.fur { fill:#1b579c; stroke:#cfe0f3; stroke-width:3; }
|
||||
.fine { fill:none; stroke:#cfe0f3; stroke-width:2; }
|
||||
.blast { fill:#0a2f5c; stroke:#e8f1fb; stroke-width:4; }
|
||||
.arw { stroke:#e8f1fb; stroke-width:4; }
|
||||
.grid { stroke:#2a5d9c; stroke-width:1; }
|
||||
.numc { fill:#e8f1fb; }
|
||||
.num { font-family:'Courier New',Courier,monospace; font-weight:700; font-size:36px;
|
||||
fill:#123f78; text-anchor:middle; }
|
||||
.lbl { font-family:'Courier New',Courier,monospace; font-weight:700; font-size:30px;
|
||||
fill:#f4f8fd; letter-spacing:2px; }
|
||||
.sub { font-family:'Courier New',Courier,monospace; font-size:21px; fill:#b9d0ea; }
|
||||
.exit { font-weight:700; fill:#e8f1fb; }
|
||||
.fl { font-family:'Courier New',Courier,monospace; font-size:18px; fill:#e8f1fb;
|
||||
text-anchor:middle; }
|
||||
.ttl { font-family:'Courier New',Courier,monospace; font-weight:700; font-size:34px;
|
||||
fill:#f4f8fd; letter-spacing:3px; }
|
||||
.tb { font-family:'Courier New',Courier,monospace; font-size:20px; fill:#dbe8f6; }
|
||||
.pen { font-family:'Bradley Hand','Noteworthy','Marker Felt',cursive; font-size:27px;
|
||||
fill:#ffe98a; }
|
||||
</style>
|
||||
<marker id="ah" viewBox="0 0 10 10" refX="8" refY="5" markerWidth="6" markerHeight="6" orient="auto">
|
||||
<path d="M0 0L10 5L0 10z" fill="#e8f1fb"/>
|
||||
</marker>
|
||||
</defs>
|
||||
<rect width="2800" height="2000" fill="#123f78"/>
|
||||
<path d="M100 0V2000M200 0V2000M300 0V2000M400 0V2000M500 0V2000M600 0V2000M700 0V2000M800 0V2000M900 0V2000M1000 0V2000M1100 0V2000M1200 0V2000M1300 0V2000M1400 0V2000M1500 0V2000M1600 0V2000M1700 0V2000M1800 0V2000M1900 0V2000M2000 0V2000M2100 0V2000M2200 0V2000M2300 0V2000M2400 0V2000M2500 0V2000M2600 0V2000M2700 0V2000M0 100H2800M0 200H2800M0 300H2800M0 400H2800M0 500H2800M0 600H2800M0 700H2800M0 800H2800M0 900H2800M0 1000H2800M0 1100H2800M0 1200H2800M0 1300H2800M0 1400H2800M0 1500H2800M0 1600H2800M0 1700H2800M0 1800H2800M0 1900H2800" class="grid"/>
|
||||
<rect x="50" y="100" width="2700" height="300" class="rm2"/>
|
||||
<text x="1150" y="230" class="lbl">LOWER CORRIDOR</text>
|
||||
<line x1="2700" y1="340" x2="2785" y2="340" class="arw" marker-end="url(#ah)"/>
|
||||
<text x="2548.2" y="60" class="sub exit">CRECHE · SHEET 5 →</text>
|
||||
<rect x="100" y="400" width="700" height="600" class="rm"/>
|
||||
<text x="130" y="475" class="lbl">PIPE ROOM</text>
|
||||
<text x="130" y="513" class="sub">Centre's in-tray</text>
|
||||
<circle cx="755" cy="445" r="30" class="numc"/><text x="755" y="458" class="num">11</text>
|
||||
<circle cx="440" cy="690" r="55" class="fur"/>
|
||||
<text x="440" y="697" class="fl" font-size="18">PIPE</text>
|
||||
<text x="130" y="820" class="sub">4" pneumatic from moor ↑</text>
|
||||
<rect x="580" y="630" width="160" height="140" class="fur"/>
|
||||
<text x="660" y="705.25" class="fl" font-size="15">IN-TRAY</text>
|
||||
<rect x="140" y="910" width="400" height="50" class="fur"/>
|
||||
<path d="M165 910V960M190 910V960M215 910V960M240 910V960M265 910V960M290 910V960M315 910V960M340 910V960M365 910V960M390 910V960M415 910V960M440 910V960M465 910V960M490 910V960M515 910V960" class="fine"/>
|
||||
<text x="440" y="590" class="pen" transform="rotate(-2 440 590)">every 90 days</text>
|
||||
<rect x="100" y="1000" width="700" height="500" class="rm"/>
|
||||
<text x="130" y="1075" class="lbl">STORES</text>
|
||||
<text x="130" y="1113" class="sub">issue counter</text>
|
||||
<rect x="130" y="1190" width="440" height="60" class="fur"/>
|
||||
<text x="350" y="1227" class="fl" font-size="20">COUNTER</text>
|
||||
<rect x="140" y="1360" width="620" height="60" class="fur"/>
|
||||
<path d="M165 1360V1420M190 1360V1420M215 1360V1420M240 1360V1420M265 1360V1420M290 1360V1420M315 1360V1420M340 1360V1420M365 1360V1420M390 1360V1420M415 1360V1420M440 1360V1420M465 1360V1420M490 1360V1420M515 1360V1420M540 1360V1420M565 1360V1420M590 1360V1420M615 1360V1420M640 1360V1420M665 1360V1420M690 1360V1420M715 1360V1420M740 1360V1420" class="fine"/>
|
||||
<rect x="680" y="1050" width="70" height="260" class="fur"/>
|
||||
<path d="M680 1075H750M680 1100H750M680 1125H750M680 1150H750M680 1175H750M680 1200H750M680 1225H750M680 1250H750M680 1275H750M680 1300H750" class="fine"/>
|
||||
<rect x="800" y="400" width="1950" height="700" class="rm"/>
|
||||
<text x="830" y="475" class="lbl">PLANT FLOOR</text>
|
||||
<circle cx="2705" cy="445" r="30" class="numc"/><text x="2705" y="458" class="num">12</text>
|
||||
<rect x="900" y="560" width="340" height="260" class="fur"/>
|
||||
<text x="1070" y="697" class="fl" font-size="20">COAL BOILER</text>
|
||||
<rect x="1340" y="560" width="240" height="200" class="fur"/>
|
||||
<text x="1460" y="667" class="fl" font-size="20">GEN 1</text>
|
||||
<rect x="1640" y="560" width="240" height="200" class="fur"/>
|
||||
<text x="1760" y="667" class="fl" font-size="20">GEN 2</text>
|
||||
<rect x="1960" y="540" width="680" height="60" class="fur"/>
|
||||
<text x="2300" y="577" class="fl" font-size="20">DUCTING</text>
|
||||
<rect x="2000" y="720" width="240" height="160" class="fur"/>
|
||||
<text x="2120" y="807" class="fl" font-size="20">PUMPS</text>
|
||||
<rect x="2320" y="720" width="240" height="160" class="fur"/>
|
||||
<text x="2440" y="807" class="fl" font-size="20">FILTERS</text>
|
||||
<text x="1340" y="930" class="pen" transform="rotate(-2 1340 930)">coal up from No.2 road</text>
|
||||
<rect x="800" y="1100" width="300" height="400" class="rm2"/>
|
||||
<path d="M800 1130H1100M800 1160H1100M800 1190H1100M800 1220H1100M800 1250H1100M800 1280H1100M800 1310H1100M800 1340H1100M800 1370H1100M800 1400H1100M800 1430H1100M800 1460H1100M800 1490H1100" class="fine"/>
|
||||
<rect x="898" y="1282" width="104" height="30" fill="#11417d"/>
|
||||
<text x="950" y="1305" class="fl" font-size="19">INCLINE</text>
|
||||
<text x="820" y="1560" class="sub">↓ PIT GALLERIES · SHEET 7</text>
|
||||
<rect x="1100" y="1100" width="500" height="400" class="rm"/>
|
||||
<text x="1130" y="1175" class="lbl">COAL HOPPER</text>
|
||||
<rect x="1180" y="1240" width="340" height="200" class="fur"/>
|
||||
<text x="1350" y="1347" class="fl" font-size="20">HOPPER</text>
|
||||
<rect x="1600" y="1100" width="1150" height="450" class="rm"/>
|
||||
<text x="1630" y="1175" class="lbl">TRANSMITTER</text>
|
||||
<text x="1630" y="1213" class="sub">feed to mast</text>
|
||||
<rect x="1700" y="1290" width="500" height="90" class="fur"/>
|
||||
<path d="M1725 1290V1380M1750 1290V1380M1775 1290V1380M1800 1290V1380M1825 1290V1380M1850 1290V1380M1875 1290V1380M1900 1290V1380M1925 1290V1380M1950 1290V1380M1975 1290V1380M2000 1290V1380M2025 1290V1380M2050 1290V1380M2075 1290V1380M2100 1290V1380M2125 1290V1380M2150 1290V1380M2175 1290V1380" class="fine"/>
|
||||
<text x="1700" y="1430" class="sub">valve racks</text>
|
||||
<rect x="2360" y="1230" width="220" height="140" class="fur"/>
|
||||
<text x="2470" y="1307" class="fl" font-size="20">PANEL</text>
|
||||
<line x1="2680" y1="1340" x2="2680" y2="1140" class="arw" marker-end="url(#ah)"/>
|
||||
<text x="2230" y="1520" class="sub">MAST CABLE ↑ MOOR</text>
|
||||
<line x1="340" y1="400" x2="440" y2="400" class="gap"/>
|
||||
<path d="M340 400L340 300A100 100 0 0 1 440 400" class="swing"/>
|
||||
<line x1="1000" y1="400" x2="1100" y2="400" class="gap"/>
|
||||
<path d="M1000 400L1000 300A100 100 0 0 1 1100 400" class="swing"/>
|
||||
<line x1="2150" y1="400" x2="2250" y2="400" class="gap"/>
|
||||
<path d="M2150 400L2150 300A100 100 0 0 1 2250 400" class="swing"/>
|
||||
<line x1="800" y1="860" x2="800" y2="960" class="gap"/>
|
||||
<path d="M800 860L700 860A100 100 0 0 0 800 960" class="swing"/>
|
||||
<line x1="420" y1="1000" x2="520" y2="1000" class="gap"/>
|
||||
<path d="M420 1000L420 1100A100 100 0 0 0 520 1000" class="swing"/>
|
||||
<line x1="850" y1="1100" x2="1050" y2="1100" class="gap"/>
|
||||
<line x1="1150" y1="1100" x2="1450" y2="1100" class="gap"/>
|
||||
<line x1="2020" y1="1100" x2="2120" y2="1100" class="gap"/>
|
||||
<path d="M2020 1100L2020 1200A100 100 0 0 0 2120 1100" class="swing"/>
|
||||
|
||||
<rect x="30" y="1610" width="640" height="380" fill="#0f3a70" stroke="#e8f1fb" stroke-width="3"/>
|
||||
<text x="54" y="1654" class="tb" font-weight="700">KEY</text>
|
||||
<path d="M60 1690L60 1760A70 70 0 0 0 130 1690" class="swing"/>
|
||||
<line x1="60" y1="1690" x2="130" y2="1690" stroke="#e8f1fb" stroke-width="7"/>
|
||||
<text x="160" y="1730" class="tb">DOOR</text>
|
||||
<circle cx="390" cy="1720" r="26" class="numc"/>
|
||||
<text x="390" y="1732" class="num" font-size="30">7</text>
|
||||
<text x="430" y="1730" class="tb">LOCATION No.</text>
|
||||
<text x="60" y="1810" class="pen" font-size="25">pencil</text>
|
||||
<text x="160" y="1810" class="tb">= AMENDED AT THE SEAT, 1974–2026</text>
|
||||
<rect x="60" y="1842" width="70" height="44" class="rock"/>
|
||||
<text x="160" y="1872" class="tb">= UNLINED MINE WORKINGS</text>
|
||||
<text x="60" y="1940" class="tb">1 SQUARE = 5 FT · NORTH ←</text>
|
||||
|
||||
<rect x="1900" y="1650" width="870" height="330" fill="#0f3a70" stroke="#e8f1fb" stroke-width="5"/>
|
||||
<line x1="1900" y1="1760" x2="2770" y2="1760" stroke="#e8f1fb" stroke-width="3"/>
|
||||
<line x1="1900" y1="1900" x2="2770" y2="1900" stroke="#e8f1fb" stroke-width="3"/>
|
||||
<text x="1924" y="1694" class="tb">REGIONAL SEAT OF GOVERNMENT 12 · BELLHOUSE</text>
|
||||
<text x="1924" y="1738" class="tb">SHEET 6 OF 8 · LEVEL 2 · SERVICES</text>
|
||||
<text x="1924" y="1815" class="ttl">PIPE ROOM & PLANT</text>
|
||||
<text x="1924" y="1866" class="tb">SCALE: ONE SQUARE = 5 FT · SECTION: SO-H04</text>
|
||||
<text x="1924" y="1950" class="tb">DRG RSG12/06 · ISSUED 1962 · COPY NOT TO LEAVE THE SEAT</text>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 9.7 KiB |
|
After Width: | Height: | Size: 103 KiB |
@@ -6,6 +6,7 @@
|
||||
.rm2 { fill:#11417d; stroke:#e8f1fb; stroke-width:5; }
|
||||
.rock { fill:#0e3668; stroke:#9fbde0; stroke-width:4; stroke-dasharray:18 10; }
|
||||
.gap { stroke:#154a8a; stroke-width:12; }
|
||||
.gap2 { stroke:#11417d; stroke-width:12; }
|
||||
.rgap { stroke:#0e3668; stroke-width:12; }
|
||||
.swing { fill:none; stroke:#e8f1fb; stroke-width:3; }
|
||||
.fur { fill:#1b579c; stroke:#cfe0f3; stroke-width:3; }
|
||||
@@ -19,6 +20,7 @@
|
||||
.lbl { font-family:'Courier New',Courier,monospace; font-weight:700; font-size:30px;
|
||||
fill:#f4f8fd; letter-spacing:2px; }
|
||||
.sub { font-family:'Courier New',Courier,monospace; font-size:21px; fill:#b9d0ea; }
|
||||
.exit { font-weight:700; fill:#e8f1fb; }
|
||||
.fl { font-family:'Courier New',Courier,monospace; font-size:18px; fill:#e8f1fb;
|
||||
text-anchor:middle; }
|
||||
.ttl { font-family:'Courier New',Courier,monospace; font-weight:700; font-size:34px;
|
||||
@@ -33,19 +35,23 @@
|
||||
</defs>
|
||||
<rect width="2800" height="2000" fill="#123f78"/>
|
||||
<path d="M100 0V2000M200 0V2000M300 0V2000M400 0V2000M500 0V2000M600 0V2000M700 0V2000M800 0V2000M900 0V2000M1000 0V2000M1100 0V2000M1200 0V2000M1300 0V2000M1400 0V2000M1500 0V2000M1600 0V2000M1700 0V2000M1800 0V2000M1900 0V2000M2000 0V2000M2100 0V2000M2200 0V2000M2300 0V2000M2400 0V2000M2500 0V2000M2600 0V2000M2700 0V2000M0 100H2800M0 200H2800M0 300H2800M0 400H2800M0 500H2800M0 600H2800M0 700H2800M0 800H2800M0 900H2800M0 1000H2800M0 1100H2800M0 1200H2800M0 1300H2800M0 1400H2800M0 1500H2800M0 1600H2800M0 1700H2800M0 1800H2800M0 1900H2800" class="grid"/>
|
||||
<rect x="50" y="100" width="2700" height="200" class="rm2"/>
|
||||
<text x="80" y="225" class="lbl">MAIN CORRIDOR</text>
|
||||
<rect x="50" y="100" width="2700" height="300" class="rm2"/>
|
||||
<text x="1150" y="230" class="lbl">MAIN CORRIDOR</text>
|
||||
<line x1="100" y1="340" x2="15" y2="340" class="arw" marker-end="url(#ah)"/>
|
||||
<text x="20" y="60" class="sub exit">← CONTROL ROOM · SHEET 2</text>
|
||||
<line x1="2700" y1="340" x2="2785" y2="340" class="arw" marker-end="url(#ah)"/>
|
||||
<text x="2523" y="60" class="sub exit">SICK BAY · SHEET 4 →</text>
|
||||
<rect x="100" y="400" width="900" height="700" class="rm"/>
|
||||
<text x="130" y="475" class="lbl">PUBLIC COUNTER</text>
|
||||
<circle cx="955" cy="445" r="30" class="numc"/><text x="955" y="458" class="num">8</text>
|
||||
<rect x="100" y="740" width="650" height="70" class="fur"/>
|
||||
<text x="425" y="782" class="fl" font-size="20">COUNTER</text>
|
||||
<rect x="200" y="560" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="350" y="560" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="500" y="560" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="650" y="560" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="540" y="430" width="200" height="45" class="fur"/>
|
||||
<text x="640" y="457.05" class="fl" font-size="13">TAKE A NUMBER</text>
|
||||
<rect x="100" y="740" width="740" height="70" class="fur"/>
|
||||
<text x="470" y="782" class="fl" font-size="20">COUNTER</text>
|
||||
<text x="850" y="790" class="sub">flap</text>
|
||||
<rect x="160" y="590" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="300" y="590" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="440" y="590" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="560" y="590" width="200" height="45" class="fur"/>
|
||||
<text x="660" y="617.05" class="fl" font-size="13">TAKE A NUMBER</text>
|
||||
<text x="140" y="1060" class="pen" transform="rotate(-2 140 1060)">complaints: allow 11 weeks</text>
|
||||
<rect x="1000" y="400" width="1200" height="1100" class="rm"/>
|
||||
<text x="1030" y="475" class="lbl">RECORDS</text>
|
||||
@@ -63,65 +69,64 @@
|
||||
<path d="M1850 585H1910M1850 610H1910M1850 635H1910M1850 660H1910M1850 685H1910M1850 710H1910M1850 735H1910M1850 760H1910M1850 785H1910M1850 810H1910M1850 835H1910M1850 860H1910M1850 885H1910M1850 910H1910M1850 935H1910M1850 960H1910M1850 985H1910M1850 1010H1910M1850 1035H1910M1850 1060H1910M1850 1085H1910M1850 1110H1910M1850 1135H1910M1850 1160H1910M1850 1185H1910M1850 1210H1910M1850 1235H1910M1850 1260H1910M1850 1285H1910M1850 1310H1910" class="fine"/>
|
||||
<rect x="2000" y="560" width="60" height="760" class="fur"/>
|
||||
<path d="M2000 585H2060M2000 610H2060M2000 635H2060M2000 660H2060M2000 685H2060M2000 710H2060M2000 735H2060M2000 760H2060M2000 785H2060M2000 810H2060M2000 835H2060M2000 860H2060M2000 885H2060M2000 910H2060M2000 935H2060M2000 960H2060M2000 985H2060M2000 1010H2060M2000 1035H2060M2000 1060H2060M2000 1085H2060M2000 1110H2060M2000 1135H2060M2000 1160H2060M2000 1185H2060M2000 1210H2060M2000 1235H2060M2000 1260H2060M2000 1285H2060M2000 1310H2060" class="fine"/>
|
||||
<text x="1040" y="1450" class="sub" >BIRTHS · DEATHS · HOUSING · RATIONS · 1974–</text>
|
||||
<rect x="2200" y="400" width="500" height="500" class="rm"/>
|
||||
<text x="1040" y="1450" class="sub">BIRTHS · DEATHS · HOUSING · RATIONS · 1974–</text>
|
||||
<rect x="2200" y="400" width="550" height="500" class="rm"/>
|
||||
<text x="2230" y="475" class="lbl">REGISTRAR</text>
|
||||
<text x="2230" y="513" class="sub">A. Pennyfeather</text>
|
||||
<rect x="2300" y="580" width="220" height="100" class="fur"/>
|
||||
<text x="2410" y="637" class="fl" font-size="20">DESK</text>
|
||||
<rect x="2380" y="710" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="2200" y="900" width="500" height="600" class="rm"/>
|
||||
<rect x="2320" y="580" width="220" height="100" class="fur"/>
|
||||
<text x="2430" y="637" class="fl" font-size="20">DESK</text>
|
||||
<rect x="2410" y="710" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="2200" y="900" width="550" height="600" class="rm"/>
|
||||
<text x="2230" y="975" class="lbl">STRONGROOM</text>
|
||||
<text x="2230" y="1013" class="sub">standing orders</text>
|
||||
<rect x="2560" y="990" width="80" height="80" class="fur"/>
|
||||
<path d="M2560 990l80 80M2640 990l-80 80" class="fine"/>
|
||||
<text x="2600" y="1105" class="fl" font-size="16">SAFE</text>
|
||||
<rect x="2250" y="1120" width="380" height="70" class="fur"/>
|
||||
<path d="M2275 1120V1190M2300 1120V1190M2325 1120V1190M2350 1120V1190M2375 1120V1190M2400 1120V1190M2425 1120V1190M2450 1120V1190M2475 1120V1190M2500 1120V1190M2525 1120V1190M2550 1120V1190M2575 1120V1190M2600 1120V1190M2625 1120V1190" class="fine"/>
|
||||
<rect x="2250" y="1330" width="380" height="70" class="fur"/>
|
||||
<path d="M2275 1330V1400M2300 1330V1400M2325 1330V1400M2350 1330V1400M2375 1330V1400M2400 1330V1400M2425 1330V1400M2450 1330V1400M2475 1330V1400M2500 1330V1400M2525 1330V1400M2550 1330V1400M2575 1330V1400M2600 1330V1400M2625 1330V1400" class="fine"/>
|
||||
<rect x="2630" y="1010" width="80" height="80" class="fur"/>
|
||||
<path d="M2630 1010l80 80M2710 1010l-80 80" class="fine"/>
|
||||
<text x="2670" y="1120" class="fl" font-size="16">SAFE</text>
|
||||
<rect x="2250" y="1140" width="350" height="70" class="fur"/>
|
||||
<path d="M2275 1140V1210M2300 1140V1210M2325 1140V1210M2350 1140V1210M2375 1140V1210M2400 1140V1210M2425 1140V1210M2450 1140V1210M2475 1140V1210M2500 1140V1210M2525 1140V1210M2550 1140V1210M2575 1140V1210" class="fine"/>
|
||||
<rect x="2250" y="1340" width="350" height="70" class="fur"/>
|
||||
<path d="M2275 1340V1410M2300 1340V1410M2325 1340V1410M2350 1340V1410M2375 1340V1410M2400 1340V1410M2425 1340V1410M2450 1340V1410M2475 1340V1410M2500 1340V1410M2525 1340V1410M2550 1340V1410M2575 1340V1410" class="fine"/>
|
||||
<rect x="100" y="1100" width="900" height="400" class="rm"/>
|
||||
<text x="130" y="1175" class="lbl">TYPING POOL</text>
|
||||
<rect x="180" y="1230" width="180" height="80" class="fur"/>
|
||||
<rect x="250" y="1340" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="430" y="1230" width="180" height="80" class="fur"/>
|
||||
<rect x="500" y="1340" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="140" y="1230" width="180" height="80" class="fur"/>
|
||||
<rect x="210" y="1340" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="410" y="1230" width="180" height="80" class="fur"/>
|
||||
<rect x="480" y="1340" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="680" y="1230" width="180" height="80" class="fur"/>
|
||||
<rect x="750" y="1340" width="34" height="34" rx="6" class="fur"/>
|
||||
<line x1="360" y1="400" x2="460" y2="400" class="gap"/>
|
||||
<path d="M360 400L360 300A100 100 0 0 1 460 400" class="swing"/>
|
||||
<line x1="2400" y1="400" x2="2500" y2="400" class="gap"/>
|
||||
<path d="M2400 400L2400 300A100 100 0 0 1 2500 400" class="swing"/>
|
||||
<line x1="1000" y1="520" x2="1000" y2="620" class="gap"/>
|
||||
<path d="M1000 520L900 520A100 100 0 0 0 1000 620" class="swing"/>
|
||||
<line x1="2200" y1="600" x2="2200" y2="700" class="gap"/>
|
||||
<path d="M2200 600L2100 600A100 100 0 0 0 2200 700" class="swing"/>
|
||||
<line x1="2480" y1="900" x2="2570" y2="900" class="gap"/>
|
||||
<path d="M2480 900L2480 810A90 90 0 0 1 2570 900" class="swing"/>
|
||||
<line x1="800" y1="740" x2="800" y2="810" class="gap"/>
|
||||
<line x1="400" y1="1100" x2="500" y2="1100" class="gap"/>
|
||||
<path d="M400 1100L400 1200A100 100 0 0 0 500 1100" class="swing"/>
|
||||
<line x1="320" y1="400" x2="420" y2="400" class="gap"/>
|
||||
<path d="M320 400L320 300A100 100 0 0 1 420 400" class="swing"/>
|
||||
<line x1="2420" y1="400" x2="2520" y2="400" class="gap"/>
|
||||
<path d="M2420 400L2420 300A100 100 0 0 1 2520 400" class="swing"/>
|
||||
<line x1="1000" y1="930" x2="1000" y2="1030" class="gap"/>
|
||||
<path d="M1000 930L900 930A100 100 0 0 0 1000 1030" class="swing"/>
|
||||
<line x1="2200" y1="800" x2="2200" y2="890" class="gap"/>
|
||||
<path d="M2200 800L2110 800A90 90 0 0 0 2200 890" class="swing"/>
|
||||
<line x1="2630" y1="900" x2="2720" y2="900" class="gap"/>
|
||||
<path d="M2630 900L2630 810A90 90 0 0 1 2720 900" class="swing"/>
|
||||
<line x1="620" y1="1100" x2="720" y2="1100" class="gap"/>
|
||||
<path d="M620 1100L620 1000A100 100 0 0 1 720 1100" class="swing"/>
|
||||
|
||||
<rect x="100" y="1560" width="640" height="380" fill="#0f3a70" stroke="#e8f1fb" stroke-width="3"/>
|
||||
<text x="124" y="1604" class="tb" font-weight="700">KEY</text>
|
||||
<path d="M130 1640L130 1710A70 70 0 0 0 200 1640" class="swing"/>
|
||||
<line x1="130" y1="1640" x2="200" y2="1640" stroke="#e8f1fb" stroke-width="7"/>
|
||||
<text x="230" y="1680" class="tb">DOOR</text>
|
||||
<circle cx="460" cy="1670" r="26" class="numc"/>
|
||||
<text x="460" y="1682" class="num" font-size="30">7</text>
|
||||
<text x="500" y="1680" class="tb">LOCATION No.</text>
|
||||
<text x="130" y="1760" class="pen" font-size="25">pencil</text>
|
||||
<text x="230" y="1760" class="tb">= AMENDED AT THE SEAT, 1974–2026</text>
|
||||
<rect x="130" y="1792" width="70" height="44" class="rock"/>
|
||||
<text x="230" y="1822" class="tb">= UNLINED MINE WORKINGS</text>
|
||||
<text x="130" y="1890" class="tb">1 SQUARE = 5 FT · N ↑</text>
|
||||
<rect x="30" y="1610" width="640" height="380" fill="#0f3a70" stroke="#e8f1fb" stroke-width="3"/>
|
||||
<text x="54" y="1654" class="tb" font-weight="700">KEY</text>
|
||||
<path d="M60 1690L60 1760A70 70 0 0 0 130 1690" class="swing"/>
|
||||
<line x1="60" y1="1690" x2="130" y2="1690" stroke="#e8f1fb" stroke-width="7"/>
|
||||
<text x="160" y="1730" class="tb">DOOR</text>
|
||||
<circle cx="390" cy="1720" r="26" class="numc"/>
|
||||
<text x="390" y="1732" class="num" font-size="30">7</text>
|
||||
<text x="430" y="1730" class="tb">LOCATION No.</text>
|
||||
<text x="60" y="1810" class="pen" font-size="25">pencil</text>
|
||||
<text x="160" y="1810" class="tb">= AMENDED AT THE SEAT, 1974–2026</text>
|
||||
<rect x="60" y="1842" width="70" height="44" class="rock"/>
|
||||
<text x="160" y="1872" class="tb">= UNLINED MINE WORKINGS</text>
|
||||
<text x="60" y="1940" class="tb">1 SQUARE = 5 FT · NORTH ←</text>
|
||||
|
||||
<rect x="1900" y="1650" width="870" height="330" fill="#0f3a70" stroke="#e8f1fb" stroke-width="5"/>
|
||||
<line x1="1900" y1="1760" x2="2770" y2="1760" stroke="#e8f1fb" stroke-width="3"/>
|
||||
<line x1="1900" y1="1900" x2="2770" y2="1900" stroke="#e8f1fb" stroke-width="3"/>
|
||||
<text x="1924" y="1694" class="tb">REGIONAL SEAT OF GOVERNMENT 12 · BELLHOUSE</text>
|
||||
<text x="1924" y="1738" class="tb">SHEET 3 OF 7 · LEVEL 2 · GOVERNMENT</text>
|
||||
<text x="1924" y="1738" class="tb">SHEET 3 OF 8 · LEVEL 1 · GOVERNMENT</text>
|
||||
<text x="1924" y="1815" class="ttl">REGISTRY</text>
|
||||
<text x="1924" y="1866" class="tb">SCALE: ONE SQUARE = 5 FT</text>
|
||||
<text x="1924" y="1866" class="tb">SCALE: ONE SQUARE = 5 FT · SECTION: SO-H04</text>
|
||||
<text x="1924" y="1950" class="tb">DRG RSG12/03 · ISSUED 1962 · COPY NOT TO LEAVE THE SEAT</text>
|
||||
</svg>
|
||||
|
||||
|
Before Width: | Height: | Size: 11 KiB After Width: | Height: | Size: 12 KiB |
|
Before Width: | Height: | Size: 102 KiB After Width: | Height: | Size: 107 KiB |
@@ -6,6 +6,7 @@
|
||||
.rm2 { fill:#11417d; stroke:#e8f1fb; stroke-width:5; }
|
||||
.rock { fill:#0e3668; stroke:#9fbde0; stroke-width:4; stroke-dasharray:18 10; }
|
||||
.gap { stroke:#154a8a; stroke-width:12; }
|
||||
.gap2 { stroke:#11417d; stroke-width:12; }
|
||||
.rgap { stroke:#0e3668; stroke-width:12; }
|
||||
.swing { fill:none; stroke:#e8f1fb; stroke-width:3; }
|
||||
.fur { fill:#1b579c; stroke:#cfe0f3; stroke-width:3; }
|
||||
@@ -19,6 +20,7 @@
|
||||
.lbl { font-family:'Courier New',Courier,monospace; font-weight:700; font-size:30px;
|
||||
fill:#f4f8fd; letter-spacing:2px; }
|
||||
.sub { font-family:'Courier New',Courier,monospace; font-size:21px; fill:#b9d0ea; }
|
||||
.exit { font-weight:700; fill:#e8f1fb; }
|
||||
.fl { font-family:'Courier New',Courier,monospace; font-size:18px; fill:#e8f1fb;
|
||||
text-anchor:middle; }
|
||||
.ttl { font-family:'Courier New',Courier,monospace; font-weight:700; font-size:34px;
|
||||
@@ -33,76 +35,84 @@
|
||||
</defs>
|
||||
<rect width="2800" height="2000" fill="#123f78"/>
|
||||
<path d="M100 0V2000M200 0V2000M300 0V2000M400 0V2000M500 0V2000M600 0V2000M700 0V2000M800 0V2000M900 0V2000M1000 0V2000M1100 0V2000M1200 0V2000M1300 0V2000M1400 0V2000M1500 0V2000M1600 0V2000M1700 0V2000M1800 0V2000M1900 0V2000M2000 0V2000M2100 0V2000M2200 0V2000M2300 0V2000M2400 0V2000M2500 0V2000M2600 0V2000M2700 0V2000M0 100H2800M0 200H2800M0 300H2800M0 400H2800M0 500H2800M0 600H2800M0 700H2800M0 800H2800M0 900H2800M0 1000H2800M0 1100H2800M0 1200H2800M0 1300H2800M0 1400H2800M0 1500H2800M0 1600H2800M0 1700H2800M0 1800H2800M0 1900H2800" class="grid"/>
|
||||
<rect x="50" y="100" width="2700" height="200" class="rm2"/>
|
||||
<text x="80" y="225" class="lbl">WELFARE CORRIDOR</text>
|
||||
<rect x="50" y="100" width="2400" height="300" class="rm2"/>
|
||||
<text x="1150" y="230" class="lbl">MAIN CORRIDOR</text>
|
||||
<line x1="100" y1="340" x2="15" y2="340" class="arw" marker-end="url(#ah)"/>
|
||||
<text x="20" y="60" class="sub exit">← REGISTRY · SHEET 3</text>
|
||||
<rect x="2450" y="100" width="300" height="300" class="rm2"/>
|
||||
<path d="M2450 130H2750M2450 160H2750M2450 190H2750M2450 220H2750M2450 250H2750M2450 280H2750M2450 310H2750M2450 340H2750M2450 370H2750" class="fine"/>
|
||||
<rect x="2566" y="232" width="68" height="30" fill="#11417d"/>
|
||||
<text x="2600" y="255" class="fl" font-size="19">DOWN</text>
|
||||
<text x="1960" y="60" class="sub">DOWN TO LEVEL 2 · SHEET 5</text>
|
||||
<line x1="2450" y1="150" x2="2450" y2="350" class="gap2"/>
|
||||
<rect x="100" y="400" width="600" height="500" class="rm"/>
|
||||
<text x="130" y="475" class="lbl">RECEPTION</text>
|
||||
<circle cx="655" cy="445" r="30" class="numc"/><text x="655" y="458" class="num">9</text>
|
||||
<rect x="160" y="570" width="300" height="70" class="fur"/>
|
||||
<text x="310" y="612" class="fl" font-size="20">DESK</text>
|
||||
<rect x="160" y="710" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="260" y="710" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="360" y="710" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="460" y="710" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="160" y="720" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="260" y="720" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="360" y="720" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="460" y="720" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="700" y="400" width="1200" height="600" class="rm"/>
|
||||
<text x="730" y="475" class="lbl">GENERAL WARD</text>
|
||||
<text x="730" y="513" class="sub">eighteen beds</text>
|
||||
<rect x="750" y="520" width="90" height="200" class="fur"/>
|
||||
<line x1="750" y1="565" x2="840" y2="565" class="fine"/>
|
||||
<rect x="750" y="790" width="90" height="190" class="fur"/>
|
||||
<line x1="750" y1="835" x2="840" y2="835" class="fine"/>
|
||||
<rect x="860" y="520" width="90" height="200" class="fur"/>
|
||||
<line x1="860" y1="565" x2="950" y2="565" class="fine"/>
|
||||
<rect x="860" y="790" width="90" height="190" class="fur"/>
|
||||
<line x1="860" y1="835" x2="950" y2="835" class="fine"/>
|
||||
<rect x="970" y="520" width="90" height="200" class="fur"/>
|
||||
<line x1="970" y1="565" x2="1060" y2="565" class="fine"/>
|
||||
<rect x="970" y="790" width="90" height="190" class="fur"/>
|
||||
<line x1="970" y1="835" x2="1060" y2="835" class="fine"/>
|
||||
<rect x="1080" y="520" width="90" height="200" class="fur"/>
|
||||
<line x1="1080" y1="565" x2="1170" y2="565" class="fine"/>
|
||||
<rect x="1080" y="790" width="90" height="190" class="fur"/>
|
||||
<line x1="1080" y1="835" x2="1170" y2="835" class="fine"/>
|
||||
<rect x="1190" y="520" width="90" height="200" class="fur"/>
|
||||
<line x1="1190" y1="565" x2="1280" y2="565" class="fine"/>
|
||||
<rect x="1190" y="790" width="90" height="190" class="fur"/>
|
||||
<line x1="1190" y1="835" x2="1280" y2="835" class="fine"/>
|
||||
<rect x="1300" y="520" width="90" height="200" class="fur"/>
|
||||
<line x1="1300" y1="565" x2="1390" y2="565" class="fine"/>
|
||||
<rect x="1300" y="790" width="90" height="190" class="fur"/>
|
||||
<line x1="1300" y1="835" x2="1390" y2="835" class="fine"/>
|
||||
<rect x="1410" y="520" width="90" height="200" class="fur"/>
|
||||
<line x1="1410" y1="565" x2="1500" y2="565" class="fine"/>
|
||||
<rect x="1410" y="790" width="90" height="190" class="fur"/>
|
||||
<line x1="1410" y1="835" x2="1500" y2="835" class="fine"/>
|
||||
<rect x="1520" y="520" width="90" height="200" class="fur"/>
|
||||
<line x1="1520" y1="565" x2="1610" y2="565" class="fine"/>
|
||||
<rect x="1520" y="790" width="90" height="190" class="fur"/>
|
||||
<line x1="1520" y1="835" x2="1610" y2="835" class="fine"/>
|
||||
<rect x="1630" y="520" width="90" height="200" class="fur"/>
|
||||
<line x1="1630" y1="565" x2="1720" y2="565" class="fine"/>
|
||||
<rect x="1630" y="790" width="90" height="190" class="fur"/>
|
||||
<line x1="1630" y1="835" x2="1720" y2="835" class="fine"/>
|
||||
<rect x="760" y="530" width="90" height="200" class="fur"/>
|
||||
<line x1="760" y1="575" x2="850" y2="575" class="fine"/>
|
||||
<rect x="760" y="790" width="90" height="190" class="fur"/>
|
||||
<line x1="760" y1="835" x2="850" y2="835" class="fine"/>
|
||||
<rect x="870" y="530" width="90" height="200" class="fur"/>
|
||||
<line x1="870" y1="575" x2="960" y2="575" class="fine"/>
|
||||
<rect x="870" y="790" width="90" height="190" class="fur"/>
|
||||
<line x1="870" y1="835" x2="960" y2="835" class="fine"/>
|
||||
<rect x="980" y="530" width="90" height="200" class="fur"/>
|
||||
<line x1="980" y1="575" x2="1070" y2="575" class="fine"/>
|
||||
<rect x="980" y="790" width="90" height="190" class="fur"/>
|
||||
<line x1="980" y1="835" x2="1070" y2="835" class="fine"/>
|
||||
<rect x="1090" y="530" width="90" height="200" class="fur"/>
|
||||
<line x1="1090" y1="575" x2="1180" y2="575" class="fine"/>
|
||||
<rect x="1090" y="790" width="90" height="190" class="fur"/>
|
||||
<line x1="1090" y1="835" x2="1180" y2="835" class="fine"/>
|
||||
<rect x="1200" y="530" width="90" height="200" class="fur"/>
|
||||
<line x1="1200" y1="575" x2="1290" y2="575" class="fine"/>
|
||||
<rect x="1200" y="790" width="90" height="190" class="fur"/>
|
||||
<line x1="1200" y1="835" x2="1290" y2="835" class="fine"/>
|
||||
<rect x="1310" y="530" width="90" height="200" class="fur"/>
|
||||
<line x1="1310" y1="575" x2="1400" y2="575" class="fine"/>
|
||||
<rect x="1310" y="790" width="90" height="190" class="fur"/>
|
||||
<line x1="1310" y1="835" x2="1400" y2="835" class="fine"/>
|
||||
<rect x="1420" y="530" width="90" height="200" class="fur"/>
|
||||
<line x1="1420" y1="575" x2="1510" y2="575" class="fine"/>
|
||||
<rect x="1420" y="790" width="90" height="190" class="fur"/>
|
||||
<line x1="1420" y1="835" x2="1510" y2="835" class="fine"/>
|
||||
<rect x="1530" y="530" width="90" height="200" class="fur"/>
|
||||
<line x1="1530" y1="575" x2="1620" y2="575" class="fine"/>
|
||||
<rect x="1530" y="790" width="90" height="190" class="fur"/>
|
||||
<line x1="1530" y1="835" x2="1620" y2="835" class="fine"/>
|
||||
<rect x="1640" y="530" width="90" height="200" class="fur"/>
|
||||
<line x1="1640" y1="575" x2="1730" y2="575" class="fine"/>
|
||||
<rect x="1640" y="790" width="90" height="190" class="fur"/>
|
||||
<line x1="1640" y1="835" x2="1730" y2="835" class="fine"/>
|
||||
<rect x="1900" y="400" width="400" height="300" class="rm"/>
|
||||
<text x="1930" y="475" class="lbl">SIDE ROOM</text>
|
||||
<text x="1930" y="513" class="sub">Mrs Marlow</text>
|
||||
<rect x="2180" y="430" width="90" height="180" class="fur"/>
|
||||
<line x1="2180" y1="475" x2="2270" y2="475" class="fine"/>
|
||||
<rect x="2100" y="540" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="1930" y="620" width="160" height="50" class="fur"/>
|
||||
<path d="M1955 620V670M1980 620V670M2005 620V670M2030 620V670M2055 620V670M2080 620V670" class="fine"/>
|
||||
<rect x="2300" y="400" width="400" height="300" class="rm"/>
|
||||
<rect x="2190" y="420" width="90" height="180" class="fur"/>
|
||||
<line x1="2190" y1="465" x2="2280" y2="465" class="fine"/>
|
||||
<rect x="2090" y="540" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="1930" y="630" width="140" height="50" class="fur"/>
|
||||
<path d="M1955 630V680M1980 630V680M2005 630V680M2030 630V680M2055 630V680" class="fine"/>
|
||||
<rect x="2300" y="400" width="450" height="300" class="rm"/>
|
||||
<text x="2330" y="475" class="lbl">DISPENSARY</text>
|
||||
<rect x="2330" y="550" width="340" height="60" class="fur"/>
|
||||
<path d="M2355 550V610M2380 550V610M2405 550V610M2430 550V610M2455 550V610M2480 550V610M2505 550V610M2530 550V610M2555 550V610M2580 550V610M2605 550V610M2630 550V610M2655 550V610" class="fine"/>
|
||||
<rect x="1900" y="700" width="800" height="300" class="rm"/>
|
||||
<rect x="2330" y="510" width="390" height="55" class="fur"/>
|
||||
<path d="M2355 510V565M2380 510V565M2405 510V565M2430 510V565M2455 510V565M2480 510V565M2505 510V565M2530 510V565M2555 510V565M2580 510V565M2605 510V565M2630 510V565M2655 510V565M2680 510V565M2705 510V565" class="fine"/>
|
||||
<rect x="1900" y="700" width="850" height="300" class="rm"/>
|
||||
<text x="1930" y="775" class="lbl">MEDICAL OFFICER</text>
|
||||
<text x="1930" y="813" class="sub">Dr Larkhall</text>
|
||||
<rect x="2300" y="820" width="200" height="100" class="fur"/>
|
||||
<text x="2400" y="877" class="fl" font-size="20">DESK</text>
|
||||
<rect x="2610" y="730" width="60" height="240" class="fur"/>
|
||||
<path d="M2610 755H2670M2610 780H2670M2610 805H2670M2610 830H2670M2610 855H2670M2610 880H2670M2610 905H2670M2610 930H2670M2610 955H2670" class="fine"/>
|
||||
<rect x="2370" y="930" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="2320" y="820" width="200" height="100" class="fur"/>
|
||||
<text x="2420" y="877" class="fl" font-size="20">DESK</text>
|
||||
<rect x="2660" y="730" width="60" height="240" class="fur"/>
|
||||
<path d="M2660 755H2720M2660 780H2720M2660 805H2720M2660 830H2720M2660 855H2720M2660 880H2720M2660 905H2720M2660 930H2720M2660 955H2720" class="fine"/>
|
||||
<rect x="2390" y="930" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="700" y="1000" width="700" height="500" class="rm"/>
|
||||
<text x="730" y="1075" class="lbl">DELIVERY</text>
|
||||
<text x="730" y="1113" class="sub">maternity</text>
|
||||
@@ -115,22 +125,22 @@
|
||||
<text x="1430" y="1075" class="lbl">THEATRE</text>
|
||||
<rect x="1580" y="1160" width="240" height="100" class="fur"/>
|
||||
<text x="1700" y="1217" class="fl" font-size="20">TABLE</text>
|
||||
<circle cx="1890" cy="1100" r="40" class="fur"/>
|
||||
<circle cx="1890" cy="1120" r="40" class="fur"/>
|
||||
<rect x="1430" y="1400" width="300" height="60" class="fur"/>
|
||||
<path d="M1455 1400V1460M1480 1400V1460M1505 1400V1460M1530 1400V1460M1555 1400V1460M1580 1400V1460M1605 1400V1460M1630 1400V1460M1655 1400V1460M1680 1400V1460M1705 1400V1460" class="fine"/>
|
||||
<rect x="100" y="900" width="600" height="600" class="rm"/>
|
||||
<text x="130" y="975" class="lbl">ISOLATION</text>
|
||||
<rect x="100" y="1100" width="300" height="400" class="rm"/>
|
||||
<rect x="400" y="1100" width="300" height="400" class="rm"/>
|
||||
<rect x="180" y="1240" width="90" height="200" class="fur"/>
|
||||
<line x1="180" y1="1285" x2="270" y2="1285" class="fine"/>
|
||||
<rect x="480" y="1240" width="90" height="200" class="fur"/>
|
||||
<line x1="480" y1="1285" x2="570" y2="1285" class="fine"/>
|
||||
<text x="130" y="1060" class="pen" transform="rotate(-1 130 1060)">unused since '78</text>
|
||||
<rect x="180" y="1260" width="90" height="200" class="fur"/>
|
||||
<line x1="180" y1="1305" x2="270" y2="1305" class="fine"/>
|
||||
<rect x="480" y="1260" width="90" height="200" class="fur"/>
|
||||
<line x1="480" y1="1305" x2="570" y2="1305" class="fine"/>
|
||||
<text x="440" y="1060" class="pen" transform="rotate(-1 440 1060)">unused since '78</text>
|
||||
<line x1="350" y1="400" x2="450" y2="400" class="gap"/>
|
||||
<path d="M350 400L350 300A100 100 0 0 1 450 400" class="swing"/>
|
||||
<line x1="2450" y1="400" x2="2550" y2="400" class="gap"/>
|
||||
<path d="M2450 400L2450 300A100 100 0 0 1 2550 400" class="swing"/>
|
||||
<line x1="2340" y1="400" x2="2430" y2="400" class="gap"/>
|
||||
<path d="M2340 400L2340 310A90 90 0 0 1 2430 400" class="swing"/>
|
||||
<line x1="700" y1="600" x2="700" y2="700" class="gap"/>
|
||||
<path d="M700 600L600 600A100 100 0 0 0 700 700" class="swing"/>
|
||||
<line x1="1900" y1="500" x2="1900" y2="600" class="gap"/>
|
||||
@@ -149,27 +159,29 @@
|
||||
<path d="M520 1100L520 1180A80 80 0 0 0 600 1100" class="swing"/>
|
||||
<line x1="2120" y1="700" x2="2200" y2="700" class="gap"/>
|
||||
<path d="M2120 700L2120 620A80 80 0 0 1 2200 700" class="swing"/>
|
||||
<line x1="2580" y1="700" x2="2660" y2="700" class="gap"/>
|
||||
<path d="M2580 700L2580 620A80 80 0 0 1 2660 700" class="swing"/>
|
||||
|
||||
<rect x="100" y="1560" width="640" height="380" fill="#0f3a70" stroke="#e8f1fb" stroke-width="3"/>
|
||||
<text x="124" y="1604" class="tb" font-weight="700">KEY</text>
|
||||
<path d="M130 1640L130 1710A70 70 0 0 0 200 1640" class="swing"/>
|
||||
<line x1="130" y1="1640" x2="200" y2="1640" stroke="#e8f1fb" stroke-width="7"/>
|
||||
<text x="230" y="1680" class="tb">DOOR</text>
|
||||
<circle cx="460" cy="1670" r="26" class="numc"/>
|
||||
<text x="460" y="1682" class="num" font-size="30">7</text>
|
||||
<text x="500" y="1680" class="tb">LOCATION No.</text>
|
||||
<text x="130" y="1760" class="pen" font-size="25">pencil</text>
|
||||
<text x="230" y="1760" class="tb">= AMENDED AT THE SEAT, 1974–2026</text>
|
||||
<rect x="130" y="1792" width="70" height="44" class="rock"/>
|
||||
<text x="230" y="1822" class="tb">= UNLINED MINE WORKINGS</text>
|
||||
<text x="130" y="1890" class="tb">1 SQUARE = 5 FT · N ↑</text>
|
||||
<rect x="30" y="1610" width="640" height="380" fill="#0f3a70" stroke="#e8f1fb" stroke-width="3"/>
|
||||
<text x="54" y="1654" class="tb" font-weight="700">KEY</text>
|
||||
<path d="M60 1690L60 1760A70 70 0 0 0 130 1690" class="swing"/>
|
||||
<line x1="60" y1="1690" x2="130" y2="1690" stroke="#e8f1fb" stroke-width="7"/>
|
||||
<text x="160" y="1730" class="tb">DOOR</text>
|
||||
<circle cx="390" cy="1720" r="26" class="numc"/>
|
||||
<text x="390" y="1732" class="num" font-size="30">7</text>
|
||||
<text x="430" y="1730" class="tb">LOCATION No.</text>
|
||||
<text x="60" y="1810" class="pen" font-size="25">pencil</text>
|
||||
<text x="160" y="1810" class="tb">= AMENDED AT THE SEAT, 1974–2026</text>
|
||||
<rect x="60" y="1842" width="70" height="44" class="rock"/>
|
||||
<text x="160" y="1872" class="tb">= UNLINED MINE WORKINGS</text>
|
||||
<text x="60" y="1940" class="tb">1 SQUARE = 5 FT · NORTH ←</text>
|
||||
|
||||
<rect x="1900" y="1650" width="870" height="330" fill="#0f3a70" stroke="#e8f1fb" stroke-width="5"/>
|
||||
<line x1="1900" y1="1760" x2="2770" y2="1760" stroke="#e8f1fb" stroke-width="3"/>
|
||||
<line x1="1900" y1="1900" x2="2770" y2="1900" stroke="#e8f1fb" stroke-width="3"/>
|
||||
<text x="1924" y="1694" class="tb">REGIONAL SEAT OF GOVERNMENT 12 · BELLHOUSE</text>
|
||||
<text x="1924" y="1738" class="tb">SHEET 4 OF 7 · LEVEL 3 · WELFARE</text>
|
||||
<text x="1924" y="1738" class="tb">SHEET 4 OF 8 · LEVEL 1 · WELFARE</text>
|
||||
<text x="1924" y="1815" class="ttl">SICK BAY</text>
|
||||
<text x="1924" y="1866" class="tb">SCALE: ONE SQUARE = 5 FT</text>
|
||||
<text x="1924" y="1866" class="tb">SCALE: ONE SQUARE = 5 FT · SECTION: SO-H04</text>
|
||||
<text x="1924" y="1950" class="tb">DRG RSG12/04 · ISSUED 1962 · COPY NOT TO LEAVE THE SEAT</text>
|
||||
</svg>
|
||||
|
||||
|
Before Width: | Height: | Size: 12 KiB After Width: | Height: | Size: 12 KiB |
|
Before Width: | Height: | Size: 101 KiB After Width: | Height: | Size: 107 KiB |
@@ -1,11 +1,12 @@
|
||||
<svg xmlns="http://www.w3.org/2000/svg" width="2800" height="2000" viewBox="0 0 2800 2000">
|
||||
<!-- STANDING ORDER — TUNNELS & SUMP. Generated by tools/bellhouse-plans.mjs; edit that, not this. -->
|
||||
<!-- STANDING ORDER — COAL ROADS & SUMP. Generated by tools/bellhouse-plans.mjs; edit that, not this. -->
|
||||
<defs>
|
||||
<style>
|
||||
.rm { fill:#154a8a; stroke:#e8f1fb; stroke-width:7; }
|
||||
.rm2 { fill:#11417d; stroke:#e8f1fb; stroke-width:5; }
|
||||
.rock { fill:#0e3668; stroke:#9fbde0; stroke-width:4; stroke-dasharray:18 10; }
|
||||
.gap { stroke:#154a8a; stroke-width:12; }
|
||||
.gap2 { stroke:#11417d; stroke-width:12; }
|
||||
.rgap { stroke:#0e3668; stroke-width:12; }
|
||||
.swing { fill:none; stroke:#e8f1fb; stroke-width:3; }
|
||||
.fur { fill:#1b579c; stroke:#cfe0f3; stroke-width:3; }
|
||||
@@ -19,6 +20,7 @@
|
||||
.lbl { font-family:'Courier New',Courier,monospace; font-weight:700; font-size:30px;
|
||||
fill:#f4f8fd; letter-spacing:2px; }
|
||||
.sub { font-family:'Courier New',Courier,monospace; font-size:21px; fill:#b9d0ea; }
|
||||
.exit { font-weight:700; fill:#e8f1fb; }
|
||||
.fl { font-family:'Courier New',Courier,monospace; font-size:18px; fill:#e8f1fb;
|
||||
text-anchor:middle; }
|
||||
.ttl { font-family:'Courier New',Courier,monospace; font-weight:700; font-size:34px;
|
||||
@@ -33,49 +35,58 @@
|
||||
</defs>
|
||||
<rect width="2800" height="2000" fill="#123f78"/>
|
||||
<path d="M100 0V2000M200 0V2000M300 0V2000M400 0V2000M500 0V2000M600 0V2000M700 0V2000M800 0V2000M900 0V2000M1000 0V2000M1100 0V2000M1200 0V2000M1300 0V2000M1400 0V2000M1500 0V2000M1600 0V2000M1700 0V2000M1800 0V2000M1900 0V2000M2000 0V2000M2100 0V2000M2200 0V2000M2300 0V2000M2400 0V2000M2500 0V2000M2600 0V2000M2700 0V2000M0 100H2800M0 200H2800M0 300H2800M0 400H2800M0 500H2800M0 600H2800M0 700H2800M0 800H2800M0 900H2800M0 1000H2800M0 1100H2800M0 1200H2800M0 1300H2800M0 1400H2800M0 1500H2800M0 1600H2800M0 1700H2800M0 1800H2800M0 1900H2800" class="grid"/>
|
||||
<rect x="50" y="150" width="2700" height="300" class="rock"/>
|
||||
<text x="80" y="225" class="lbl">No.2 COAL ROAD</text>
|
||||
<text x="80" y="263" class="sub">growing beds under lamps</text>
|
||||
<rect x="50" y="150" width="300" height="300" class="rm2"/>
|
||||
<path d="M50 180H350M50 210H350M50 240H350M50 270H350M50 300H350M50 330H350M50 360H350M50 390H350M50 420H350" class="fine"/>
|
||||
<rect x="148" y="282" width="104" height="30" fill="#11417d"/>
|
||||
<text x="200" y="305" class="fl" font-size="19">INCLINE</text>
|
||||
<text x="30" y="120" class="sub">↑ PLANT FLOOR · SHEET 6</text>
|
||||
<rect x="350" y="150" width="2400" height="300" class="rock"/>
|
||||
<text x="370" y="225" class="lbl">No.2 COAL ROAD</text>
|
||||
<text x="370" y="263" class="sub">growing beds under lamps</text>
|
||||
<circle cx="2705" cy="195" r="30" class="numc"/><text x="2705" y="208" class="num">14</text>
|
||||
<rect x="600" y="220" width="200" height="60" class="fur"/>
|
||||
<path d="M625 220V280M650 220V280M675 220V280M700 220V280M725 220V280M750 220V280M775 220V280" class="fine"/>
|
||||
<rect x="840" y="220" width="200" height="60" class="fur"/>
|
||||
<path d="M865 220V280M890 220V280M915 220V280M940 220V280M965 220V280M990 220V280M1015 220V280" class="fine"/>
|
||||
<rect x="1080" y="220" width="200" height="60" class="fur"/>
|
||||
<path d="M1105 220V280M1130 220V280M1155 220V280M1180 220V280M1205 220V280M1230 220V280M1255 220V280" class="fine"/>
|
||||
<rect x="1320" y="220" width="200" height="60" class="fur"/>
|
||||
<path d="M1345 220V280M1370 220V280M1395 220V280M1420 220V280M1445 220V280M1470 220V280M1495 220V280" class="fine"/>
|
||||
<rect x="1560" y="220" width="200" height="60" class="fur"/>
|
||||
<path d="M1585 220V280M1610 220V280M1635 220V280M1660 220V280M1685 220V280M1710 220V280M1735 220V280" class="fine"/>
|
||||
<rect x="1800" y="220" width="200" height="60" class="fur"/>
|
||||
<path d="M1825 220V280M1850 220V280M1875 220V280M1900 220V280M1925 220V280M1950 220V280M1975 220V280" class="fine"/>
|
||||
<rect x="2040" y="220" width="200" height="60" class="fur"/>
|
||||
<path d="M2065 220V280M2090 220V280M2115 220V280M2140 220V280M2165 220V280M2190 220V280M2215 220V280" class="fine"/>
|
||||
<rect x="2280" y="220" width="200" height="60" class="fur"/>
|
||||
<path d="M2305 220V280M2330 220V280M2355 220V280M2380 220V280M2405 220V280M2430 220V280M2455 220V280" class="fine"/>
|
||||
<rect x="2520" y="220" width="200" height="60" class="fur"/>
|
||||
<path d="M2545 220V280M2570 220V280M2595 220V280M2620 220V280M2645 220V280M2670 220V280M2695 220V280" class="fine"/>
|
||||
<rect x="600" y="370" width="200" height="60" class="fur"/>
|
||||
<path d="M625 370V430M650 370V430M675 370V430M700 370V430M725 370V430M750 370V430M775 370V430" class="fine"/>
|
||||
<rect x="840" y="370" width="200" height="60" class="fur"/>
|
||||
<path d="M865 370V430M890 370V430M915 370V430M940 370V430M965 370V430M990 370V430M1015 370V430" class="fine"/>
|
||||
<rect x="1080" y="370" width="200" height="60" class="fur"/>
|
||||
<path d="M1105 370V430M1130 370V430M1155 370V430M1180 370V430M1205 370V430M1230 370V430M1255 370V430" class="fine"/>
|
||||
<rect x="1320" y="370" width="200" height="60" class="fur"/>
|
||||
<path d="M1345 370V430M1370 370V430M1395 370V430M1420 370V430M1445 370V430M1470 370V430M1495 370V430" class="fine"/>
|
||||
<rect x="1560" y="370" width="200" height="60" class="fur"/>
|
||||
<path d="M1585 370V430M1610 370V430M1635 370V430M1660 370V430M1685 370V430M1710 370V430M1735 370V430" class="fine"/>
|
||||
<rect x="1800" y="370" width="200" height="60" class="fur"/>
|
||||
<path d="M1825 370V430M1850 370V430M1875 370V430M1900 370V430M1925 370V430M1950 370V430M1975 370V430" class="fine"/>
|
||||
<rect x="2040" y="370" width="200" height="60" class="fur"/>
|
||||
<path d="M2065 370V430M2090 370V430M2115 370V430M2140 370V430M2165 370V430M2190 370V430M2215 370V430" class="fine"/>
|
||||
<rect x="2280" y="370" width="200" height="60" class="fur"/>
|
||||
<path d="M2305 370V430M2330 370V430M2355 370V430M2380 370V430M2405 370V430M2430 370V430M2455 370V430" class="fine"/>
|
||||
<rect x="2520" y="370" width="200" height="60" class="fur"/>
|
||||
<path d="M2545 370V430M2570 370V430M2595 370V430M2620 370V430M2645 370V430M2670 370V430M2695 370V430" class="fine"/>
|
||||
<text x="2000" y="130" class="pen" transform="rotate(-1 2000 130)">workings beyond: not surveyed</text>
|
||||
<line x1="350" y1="200" x2="350" y2="400" class="rgap"/>
|
||||
<rect x="880" y="180" width="190" height="55" class="fur"/>
|
||||
<path d="M905 180V235M930 180V235M955 180V235M980 180V235M1005 180V235M1030 180V235M1055 180V235" class="fine"/>
|
||||
<rect x="880" y="365" width="190" height="55" class="fur"/>
|
||||
<path d="M905 365V420M930 365V420M955 365V420M980 365V420M1005 365V420M1030 365V420M1055 365V420" class="fine"/>
|
||||
<rect x="1100" y="180" width="190" height="55" class="fur"/>
|
||||
<path d="M1125 180V235M1150 180V235M1175 180V235M1200 180V235M1225 180V235M1250 180V235M1275 180V235" class="fine"/>
|
||||
<rect x="1100" y="365" width="190" height="55" class="fur"/>
|
||||
<path d="M1125 365V420M1150 365V420M1175 365V420M1200 365V420M1225 365V420M1250 365V420M1275 365V420" class="fine"/>
|
||||
<rect x="1320" y="180" width="190" height="55" class="fur"/>
|
||||
<path d="M1345 180V235M1370 180V235M1395 180V235M1420 180V235M1445 180V235M1470 180V235M1495 180V235" class="fine"/>
|
||||
<rect x="1320" y="365" width="190" height="55" class="fur"/>
|
||||
<path d="M1345 365V420M1370 365V420M1395 365V420M1420 365V420M1445 365V420M1470 365V420M1495 365V420" class="fine"/>
|
||||
<rect x="1540" y="180" width="190" height="55" class="fur"/>
|
||||
<path d="M1565 180V235M1590 180V235M1615 180V235M1640 180V235M1665 180V235M1690 180V235M1715 180V235" class="fine"/>
|
||||
<rect x="1540" y="365" width="190" height="55" class="fur"/>
|
||||
<path d="M1565 365V420M1590 365V420M1615 365V420M1640 365V420M1665 365V420M1690 365V420M1715 365V420" class="fine"/>
|
||||
<rect x="1760" y="180" width="190" height="55" class="fur"/>
|
||||
<path d="M1785 180V235M1810 180V235M1835 180V235M1860 180V235M1885 180V235M1910 180V235M1935 180V235" class="fine"/>
|
||||
<rect x="1760" y="365" width="190" height="55" class="fur"/>
|
||||
<path d="M1785 365V420M1810 365V420M1835 365V420M1860 365V420M1885 365V420M1910 365V420M1935 365V420" class="fine"/>
|
||||
<rect x="1980" y="180" width="190" height="55" class="fur"/>
|
||||
<path d="M2005 180V235M2030 180V235M2055 180V235M2080 180V235M2105 180V235M2130 180V235M2155 180V235" class="fine"/>
|
||||
<rect x="1980" y="365" width="190" height="55" class="fur"/>
|
||||
<path d="M2005 365V420M2030 365V420M2055 365V420M2080 365V420M2105 365V420M2130 365V420M2155 365V420" class="fine"/>
|
||||
<rect x="2200" y="180" width="190" height="55" class="fur"/>
|
||||
<path d="M2225 180V235M2250 180V235M2275 180V235M2300 180V235M2325 180V235M2350 180V235M2375 180V235" class="fine"/>
|
||||
<rect x="2200" y="365" width="190" height="55" class="fur"/>
|
||||
<path d="M2225 365V420M2250 365V420M2275 365V420M2300 365V420M2325 365V420M2350 365V420M2375 365V420" class="fine"/>
|
||||
<rect x="2420" y="180" width="190" height="55" class="fur"/>
|
||||
<path d="M2445 180V235M2470 180V235M2495 180V235M2520 180V235M2545 180V235M2570 180V235M2595 180V235" class="fine"/>
|
||||
<rect x="2420" y="365" width="190" height="55" class="fur"/>
|
||||
<path d="M2445 365V420M2470 365V420M2495 365V420M2520 365V420M2545 365V420M2570 365V420M2595 365V420" class="fine"/>
|
||||
<line x1="2700" y1="300" x2="2785" y2="300" class="arw" marker-end="url(#ah)"/>
|
||||
<text x="2497.8" y="120" class="sub exit">VIGIL HALL · SHEET 8 →</text>
|
||||
<rect x="900" y="450" width="200" height="300" class="rock"/>
|
||||
<rect x="1700" y="450" width="200" height="300" class="rock"/>
|
||||
<rect x="1100" y="450" width="600" height="300" class="rm"/>
|
||||
<text x="1130" y="525" class="lbl">BUFFER DEPOT</text>
|
||||
<text x="1130" y="563" class="sub">tins · blankets · oil</text>
|
||||
<rect x="1140" y="640" width="520" height="50" class="fur"/>
|
||||
<path d="M1165 640V690M1190 640V690M1215 640V690M1240 640V690M1265 640V690M1290 640V690M1315 640V690M1340 640V690M1365 640V690M1390 640V690M1415 640V690M1440 640V690M1465 640V690M1490 640V690M1515 640V690M1540 640V690M1565 640V690M1590 640V690M1615 640V690M1640 640V690" class="fine"/>
|
||||
<text x="100" y="630" class="pen" transform="rotate(-1 100 630)">workings west: not surveyed</text>
|
||||
<rect x="50" y="750" width="1850" height="300" class="rock"/>
|
||||
<text x="80" y="825" class="lbl">No.3 COAL ROAD</text>
|
||||
<text x="80" y="863" class="sub">trout tanks</text>
|
||||
@@ -98,47 +109,48 @@
|
||||
<text x="2030" y="860" class="pen" transform="rotate(-2 2030 860)">eggs → Welfare, Tues/Fri</text>
|
||||
<rect x="1300" y="1050" width="300" height="400" class="rm2"/>
|
||||
<path d="M1300 1080H1600M1300 1110H1600M1300 1140H1600M1300 1170H1600M1300 1200H1600M1300 1230H1600M1300 1260H1600M1300 1290H1600M1300 1320H1600M1300 1350H1600M1300 1380H1600M1300 1410H1600M1300 1440H1600" class="fine"/>
|
||||
<text x="1450" y="1258" class="fl bg" font-size="20">SUMP STAIR</text>
|
||||
<rect x="1380" y="1232" width="140" height="30" fill="#11417d"/>
|
||||
<text x="1450" y="1255" class="fl" font-size="19">SUMP STAIR</text>
|
||||
<rect x="100" y="1150" width="1200" height="200" class="rm"/>
|
||||
<text x="130" y="1280" class="lbl">THE SUMP</text>
|
||||
<circle cx="1255" cy="1195" r="30" class="numc"/><text x="1255" y="1208" class="num">15</text>
|
||||
<rect x="100" y="1350" width="300" height="450" class="rm"/>
|
||||
<rect x="400" y="1350" width="300" height="450" class="rm"/>
|
||||
<rect x="700" y="1350" width="300" height="450" class="rm"/>
|
||||
<rect x="1000" y="1350" width="300" height="450" class="rm"/>
|
||||
<text x="130" y="1410" class="sub" >CELL 1</text>
|
||||
<rect x="150" y="1530" width="90" height="200" class="fur"/>
|
||||
<line x1="150" y1="1575" x2="240" y2="1575" class="fine"/>
|
||||
<text x="120" y="1440" class="lbl">CELL 1</text>
|
||||
<rect x="150" y="1540" width="90" height="200" class="fur"/>
|
||||
<line x1="150" y1="1585" x2="240" y2="1585" class="fine"/>
|
||||
<line x1="290" y1="1350" x2="380" y2="1350" class="gap"/>
|
||||
<path d="M290 1350L290 1440A90 90 0 0 0 380 1350" class="swing"/>
|
||||
<text x="430" y="1410" class="sub" >CELL 2</text>
|
||||
<rect x="450" y="1530" width="90" height="200" class="fur"/>
|
||||
<line x1="450" y1="1575" x2="540" y2="1575" class="fine"/>
|
||||
<rect x="400" y="1350" width="300" height="450" class="rm"/>
|
||||
<text x="420" y="1440" class="lbl">CELL 2</text>
|
||||
<rect x="450" y="1540" width="90" height="200" class="fur"/>
|
||||
<line x1="450" y1="1585" x2="540" y2="1585" class="fine"/>
|
||||
<line x1="590" y1="1350" x2="680" y2="1350" class="gap"/>
|
||||
<path d="M590 1350L590 1440A90 90 0 0 0 680 1350" class="swing"/>
|
||||
<text x="730" y="1410" class="sub" >CELL 3</text>
|
||||
<rect x="750" y="1530" width="90" height="200" class="fur"/>
|
||||
<line x1="750" y1="1575" x2="840" y2="1575" class="fine"/>
|
||||
<rect x="700" y="1350" width="300" height="450" class="rm"/>
|
||||
<text x="720" y="1440" class="lbl">CELL 3</text>
|
||||
<rect x="750" y="1540" width="90" height="200" class="fur"/>
|
||||
<line x1="750" y1="1585" x2="840" y2="1585" class="fine"/>
|
||||
<line x1="890" y1="1350" x2="980" y2="1350" class="gap"/>
|
||||
<path d="M890 1350L890 1440A90 90 0 0 0 980 1350" class="swing"/>
|
||||
<text x="1030" y="1410" class="sub" >CELL 4</text>
|
||||
<rect x="1050" y="1530" width="90" height="200" class="fur"/>
|
||||
<line x1="1050" y1="1575" x2="1140" y2="1575" class="fine"/>
|
||||
<rect x="1000" y="1350" width="300" height="450" class="rm"/>
|
||||
<text x="1020" y="1440" class="lbl">CELL 4</text>
|
||||
<rect x="1050" y="1540" width="90" height="200" class="fur"/>
|
||||
<line x1="1050" y1="1585" x2="1140" y2="1585" class="fine"/>
|
||||
<line x1="1190" y1="1350" x2="1280" y2="1350" class="gap"/>
|
||||
<path d="M1190 1350L1190 1440A90 90 0 0 0 1280 1350" class="swing"/>
|
||||
<rect x="880" y="1190" width="200" height="80" class="fur"/>
|
||||
<text x="980" y="1237" class="fl" font-size="20">WARDEN</text>
|
||||
<text x="130" y="1860" class="pen" transform="rotate(-1 130 1860)">locks: 1962 pattern — oil them</text>
|
||||
<rect x="880" y="1180" width="200" height="80" class="fur"/>
|
||||
<text x="980" y="1227" class="fl" font-size="20">WARDEN</text>
|
||||
<text x="130" y="1870" class="pen" transform="rotate(-1 130 1870)">locks: 1962 pattern — oil them</text>
|
||||
<line x1="1350" y1="1050" x2="1550" y2="1050" class="rgap"/>
|
||||
<line x1="1300" y1="1200" x2="1300" y2="1300" class="gap"/>
|
||||
<line x1="900" y1="450" x2="1100" y2="450" class="rgap"/>
|
||||
<line x1="900" y1="750" x2="1100" y2="750" class="rgap"/>
|
||||
<line x1="1700" y1="450" x2="1900" y2="450" class="rgap"/>
|
||||
<line x1="1700" y1="750" x2="1900" y2="750" class="rgap"/>
|
||||
<line x1="1100" y1="520" x2="1100" y2="620" class="gap"/>
|
||||
<path d="M1100 520L1000 520A100 100 0 0 0 1100 620" class="swing"/>
|
||||
<line x1="1900" y1="850" x2="1900" y2="950" class="gap"/>
|
||||
<path d="M1900 850L2000 850A100 100 0 0 1 1900 950" class="swing"/>
|
||||
<line x1="130" y1="300" x2="10" y2="300" class="arw" marker-end="url(#ah)"/>
|
||||
<text x="60" y="120" class="sub" >← to Welfare stair</text>
|
||||
|
||||
<rect x="1750" y="1210" width="640" height="380" fill="#0f3a70" stroke="#e8f1fb" stroke-width="3"/>
|
||||
<text x="1774" y="1254" class="tb" font-weight="700">KEY</text>
|
||||
@@ -152,14 +164,14 @@
|
||||
<text x="1880" y="1410" class="tb">= AMENDED AT THE SEAT, 1974–2026</text>
|
||||
<rect x="1780" y="1442" width="70" height="44" class="rock"/>
|
||||
<text x="1880" y="1472" class="tb">= UNLINED MINE WORKINGS</text>
|
||||
<text x="1780" y="1540" class="tb">1 SQUARE = 5 FT · N ↑</text>
|
||||
<text x="1780" y="1540" class="tb">1 SQUARE = 5 FT · NORTH ←</text>
|
||||
|
||||
<rect x="1900" y="1650" width="870" height="330" fill="#0f3a70" stroke="#e8f1fb" stroke-width="5"/>
|
||||
<line x1="1900" y1="1760" x2="2770" y2="1760" stroke="#e8f1fb" stroke-width="3"/>
|
||||
<line x1="1900" y1="1900" x2="2770" y2="1900" stroke="#e8f1fb" stroke-width="3"/>
|
||||
<text x="1924" y="1694" class="tb">REGIONAL SEAT OF GOVERNMENT 12 · BELLHOUSE</text>
|
||||
<text x="1924" y="1738" class="tb">SHEET 7 OF 7 · LEVEL 4 · WORKINGS</text>
|
||||
<text x="1924" y="1815" class="ttl">TUNNELS & SUMP</text>
|
||||
<text x="1924" y="1866" class="tb">SCALE: ONE SQUARE = 5 FT</text>
|
||||
<text x="1924" y="1738" class="tb">SHEET 7 OF 8 · PIT GALLERIES</text>
|
||||
<text x="1924" y="1815" class="ttl">COAL ROADS & SUMP</text>
|
||||
<text x="1924" y="1866" class="tb">SCALE: ONE SQUARE = 5 FT · SECTION: SO-H04</text>
|
||||
<text x="1924" y="1950" class="tb">DRG RSG12/07 · ISSUED 1962 · COPY NOT TO LEAVE THE SEAT</text>
|
||||
</svg>
|
||||
|
||||
|
Before Width: | Height: | Size: 12 KiB After Width: | Height: | Size: 13 KiB |
|
Before Width: | Height: | Size: 115 KiB After Width: | Height: | Size: 125 KiB |
@@ -1,11 +1,12 @@
|
||||
<svg xmlns="http://www.w3.org/2000/svg" width="2800" height="2000" viewBox="0 0 2800 2000">
|
||||
<!-- STANDING ORDER — VIGIL HALL & PLANT. Generated by tools/bellhouse-plans.mjs; edit that, not this. -->
|
||||
<!-- STANDING ORDER — VIGIL HALL. Generated by tools/bellhouse-plans.mjs; edit that, not this. -->
|
||||
<defs>
|
||||
<style>
|
||||
.rm { fill:#154a8a; stroke:#e8f1fb; stroke-width:7; }
|
||||
.rm2 { fill:#11417d; stroke:#e8f1fb; stroke-width:5; }
|
||||
.rock { fill:#0e3668; stroke:#9fbde0; stroke-width:4; stroke-dasharray:18 10; }
|
||||
.gap { stroke:#154a8a; stroke-width:12; }
|
||||
.gap2 { stroke:#11417d; stroke-width:12; }
|
||||
.rgap { stroke:#0e3668; stroke-width:12; }
|
||||
.swing { fill:none; stroke:#e8f1fb; stroke-width:3; }
|
||||
.fur { fill:#1b579c; stroke:#cfe0f3; stroke-width:3; }
|
||||
@@ -19,6 +20,7 @@
|
||||
.lbl { font-family:'Courier New',Courier,monospace; font-weight:700; font-size:30px;
|
||||
fill:#f4f8fd; letter-spacing:2px; }
|
||||
.sub { font-family:'Courier New',Courier,monospace; font-size:21px; fill:#b9d0ea; }
|
||||
.exit { font-weight:700; fill:#e8f1fb; }
|
||||
.fl { font-family:'Courier New',Courier,monospace; font-size:18px; fill:#e8f1fb;
|
||||
text-anchor:middle; }
|
||||
.ttl { font-family:'Courier New',Courier,monospace; font-weight:700; font-size:34px;
|
||||
@@ -33,241 +35,293 @@
|
||||
</defs>
|
||||
<rect width="2800" height="2000" fill="#123f78"/>
|
||||
<path d="M100 0V2000M200 0V2000M300 0V2000M400 0V2000M500 0V2000M600 0V2000M700 0V2000M800 0V2000M900 0V2000M1000 0V2000M1100 0V2000M1200 0V2000M1300 0V2000M1400 0V2000M1500 0V2000M1600 0V2000M1700 0V2000M1800 0V2000M1900 0V2000M2000 0V2000M2100 0V2000M2200 0V2000M2300 0V2000M2400 0V2000M2500 0V2000M2600 0V2000M2700 0V2000M0 100H2800M0 200H2800M0 300H2800M0 400H2800M0 500H2800M0 600H2800M0 700H2800M0 800H2800M0 900H2800M0 1000H2800M0 1100H2800M0 1200H2800M0 1300H2800M0 1400H2800M0 1500H2800M0 1600H2800M0 1700H2800M0 1800H2800M0 1900H2800" class="grid"/>
|
||||
<rect x="100" y="100" width="1400" height="1300" class="rm"/>
|
||||
<text x="130" y="1350" class="lbl">VIGIL HALL</text>
|
||||
<circle cx="1455" cy="145" r="30" class="numc"/><text x="1455" y="158" class="num">13</text>
|
||||
<rect x="300" y="150" width="1000" height="180" class="fur"/>
|
||||
<text x="800" y="247.7" class="fl" font-size="22">PLATFORM</text>
|
||||
<rect x="760" y="340" width="80" height="50" class="fur"/>
|
||||
<text x="860" y="390" class="sub" >lectern</text>
|
||||
<rect x="350" y="110" width="500" height="30" class="fur"/>
|
||||
<text x="900" y="135" class="sub" >ROLL OF HONOUR</text>
|
||||
<rect x="200" y="480" width="36" height="34" rx="5" class="fur"/>
|
||||
<rect x="255" y="480" width="36" height="34" rx="5" class="fur"/>
|
||||
<rect x="310" y="480" width="36" height="34" rx="5" class="fur"/>
|
||||
<rect x="365" y="480" width="36" height="34" rx="5" class="fur"/>
|
||||
<rect x="420" y="480" width="36" height="34" rx="5" class="fur"/>
|
||||
<rect x="475" y="480" width="36" height="34" rx="5" class="fur"/>
|
||||
<rect x="530" y="480" width="36" height="34" rx="5" class="fur"/>
|
||||
<rect x="585" y="480" width="36" height="34" rx="5" class="fur"/>
|
||||
<rect x="640" y="480" width="36" height="34" rx="5" class="fur"/>
|
||||
<rect x="695" y="480" width="36" height="34" rx="5" class="fur"/>
|
||||
<rect x="860" y="480" width="36" height="34" rx="5" class="fur"/>
|
||||
<rect x="915" y="480" width="36" height="34" rx="5" class="fur"/>
|
||||
<rect x="970" y="480" width="36" height="34" rx="5" class="fur"/>
|
||||
<rect x="1025" y="480" width="36" height="34" rx="5" class="fur"/>
|
||||
<rect x="1080" y="480" width="36" height="34" rx="5" class="fur"/>
|
||||
<rect x="1135" y="480" width="36" height="34" rx="5" class="fur"/>
|
||||
<rect x="1190" y="480" width="36" height="34" rx="5" class="fur"/>
|
||||
<rect x="1245" y="480" width="36" height="34" rx="5" class="fur"/>
|
||||
<rect x="200" y="560" width="36" height="34" rx="5" class="fur"/>
|
||||
<rect x="255" y="560" width="36" height="34" rx="5" class="fur"/>
|
||||
<rect x="310" y="560" width="36" height="34" rx="5" class="fur"/>
|
||||
<rect x="365" y="560" width="36" height="34" rx="5" class="fur"/>
|
||||
<rect x="420" y="560" width="36" height="34" rx="5" class="fur"/>
|
||||
<rect x="475" y="560" width="36" height="34" rx="5" class="fur"/>
|
||||
<rect x="530" y="560" width="36" height="34" rx="5" class="fur"/>
|
||||
<rect x="585" y="560" width="36" height="34" rx="5" class="fur"/>
|
||||
<rect x="640" y="560" width="36" height="34" rx="5" class="fur"/>
|
||||
<rect x="695" y="560" width="36" height="34" rx="5" class="fur"/>
|
||||
<rect x="860" y="560" width="36" height="34" rx="5" class="fur"/>
|
||||
<rect x="915" y="560" width="36" height="34" rx="5" class="fur"/>
|
||||
<rect x="970" y="560" width="36" height="34" rx="5" class="fur"/>
|
||||
<rect x="1025" y="560" width="36" height="34" rx="5" class="fur"/>
|
||||
<rect x="1080" y="560" width="36" height="34" rx="5" class="fur"/>
|
||||
<rect x="1135" y="560" width="36" height="34" rx="5" class="fur"/>
|
||||
<rect x="1190" y="560" width="36" height="34" rx="5" class="fur"/>
|
||||
<rect x="1245" y="560" width="36" height="34" rx="5" class="fur"/>
|
||||
<rect x="200" y="640" width="36" height="34" rx="5" class="fur"/>
|
||||
<rect x="255" y="640" width="36" height="34" rx="5" class="fur"/>
|
||||
<rect x="310" y="640" width="36" height="34" rx="5" class="fur"/>
|
||||
<rect x="365" y="640" width="36" height="34" rx="5" class="fur"/>
|
||||
<rect x="420" y="640" width="36" height="34" rx="5" class="fur"/>
|
||||
<rect x="475" y="640" width="36" height="34" rx="5" class="fur"/>
|
||||
<rect x="530" y="640" width="36" height="34" rx="5" class="fur"/>
|
||||
<rect x="585" y="640" width="36" height="34" rx="5" class="fur"/>
|
||||
<rect x="640" y="640" width="36" height="34" rx="5" class="fur"/>
|
||||
<rect x="695" y="640" width="36" height="34" rx="5" class="fur"/>
|
||||
<rect x="860" y="640" width="36" height="34" rx="5" class="fur"/>
|
||||
<rect x="915" y="640" width="36" height="34" rx="5" class="fur"/>
|
||||
<rect x="970" y="640" width="36" height="34" rx="5" class="fur"/>
|
||||
<rect x="1025" y="640" width="36" height="34" rx="5" class="fur"/>
|
||||
<rect x="1080" y="640" width="36" height="34" rx="5" class="fur"/>
|
||||
<rect x="1135" y="640" width="36" height="34" rx="5" class="fur"/>
|
||||
<rect x="1190" y="640" width="36" height="34" rx="5" class="fur"/>
|
||||
<rect x="1245" y="640" width="36" height="34" rx="5" class="fur"/>
|
||||
<rect x="200" y="720" width="36" height="34" rx="5" class="fur"/>
|
||||
<rect x="255" y="720" width="36" height="34" rx="5" class="fur"/>
|
||||
<rect x="310" y="720" width="36" height="34" rx="5" class="fur"/>
|
||||
<rect x="365" y="720" width="36" height="34" rx="5" class="fur"/>
|
||||
<rect x="420" y="720" width="36" height="34" rx="5" class="fur"/>
|
||||
<rect x="475" y="720" width="36" height="34" rx="5" class="fur"/>
|
||||
<rect x="530" y="720" width="36" height="34" rx="5" class="fur"/>
|
||||
<rect x="585" y="720" width="36" height="34" rx="5" class="fur"/>
|
||||
<rect x="640" y="720" width="36" height="34" rx="5" class="fur"/>
|
||||
<rect x="695" y="720" width="36" height="34" rx="5" class="fur"/>
|
||||
<rect x="860" y="720" width="36" height="34" rx="5" class="fur"/>
|
||||
<rect x="915" y="720" width="36" height="34" rx="5" class="fur"/>
|
||||
<rect x="970" y="720" width="36" height="34" rx="5" class="fur"/>
|
||||
<rect x="1025" y="720" width="36" height="34" rx="5" class="fur"/>
|
||||
<rect x="1080" y="720" width="36" height="34" rx="5" class="fur"/>
|
||||
<rect x="1135" y="720" width="36" height="34" rx="5" class="fur"/>
|
||||
<rect x="1190" y="720" width="36" height="34" rx="5" class="fur"/>
|
||||
<rect x="1245" y="720" width="36" height="34" rx="5" class="fur"/>
|
||||
<rect x="200" y="800" width="36" height="34" rx="5" class="fur"/>
|
||||
<rect x="255" y="800" width="36" height="34" rx="5" class="fur"/>
|
||||
<rect x="310" y="800" width="36" height="34" rx="5" class="fur"/>
|
||||
<rect x="365" y="800" width="36" height="34" rx="5" class="fur"/>
|
||||
<rect x="420" y="800" width="36" height="34" rx="5" class="fur"/>
|
||||
<rect x="475" y="800" width="36" height="34" rx="5" class="fur"/>
|
||||
<rect x="530" y="800" width="36" height="34" rx="5" class="fur"/>
|
||||
<rect x="585" y="800" width="36" height="34" rx="5" class="fur"/>
|
||||
<rect x="640" y="800" width="36" height="34" rx="5" class="fur"/>
|
||||
<rect x="695" y="800" width="36" height="34" rx="5" class="fur"/>
|
||||
<rect x="860" y="800" width="36" height="34" rx="5" class="fur"/>
|
||||
<rect x="915" y="800" width="36" height="34" rx="5" class="fur"/>
|
||||
<rect x="970" y="800" width="36" height="34" rx="5" class="fur"/>
|
||||
<rect x="1025" y="800" width="36" height="34" rx="5" class="fur"/>
|
||||
<rect x="1080" y="800" width="36" height="34" rx="5" class="fur"/>
|
||||
<rect x="1135" y="800" width="36" height="34" rx="5" class="fur"/>
|
||||
<rect x="1190" y="800" width="36" height="34" rx="5" class="fur"/>
|
||||
<rect x="1245" y="800" width="36" height="34" rx="5" class="fur"/>
|
||||
<rect x="200" y="880" width="36" height="34" rx="5" class="fur"/>
|
||||
<rect x="255" y="880" width="36" height="34" rx="5" class="fur"/>
|
||||
<rect x="310" y="880" width="36" height="34" rx="5" class="fur"/>
|
||||
<rect x="365" y="880" width="36" height="34" rx="5" class="fur"/>
|
||||
<rect x="420" y="880" width="36" height="34" rx="5" class="fur"/>
|
||||
<rect x="475" y="880" width="36" height="34" rx="5" class="fur"/>
|
||||
<rect x="530" y="880" width="36" height="34" rx="5" class="fur"/>
|
||||
<rect x="585" y="880" width="36" height="34" rx="5" class="fur"/>
|
||||
<rect x="640" y="880" width="36" height="34" rx="5" class="fur"/>
|
||||
<rect x="695" y="880" width="36" height="34" rx="5" class="fur"/>
|
||||
<rect x="860" y="880" width="36" height="34" rx="5" class="fur"/>
|
||||
<rect x="915" y="880" width="36" height="34" rx="5" class="fur"/>
|
||||
<rect x="970" y="880" width="36" height="34" rx="5" class="fur"/>
|
||||
<rect x="1025" y="880" width="36" height="34" rx="5" class="fur"/>
|
||||
<rect x="1080" y="880" width="36" height="34" rx="5" class="fur"/>
|
||||
<rect x="1135" y="880" width="36" height="34" rx="5" class="fur"/>
|
||||
<rect x="1190" y="880" width="36" height="34" rx="5" class="fur"/>
|
||||
<rect x="1245" y="880" width="36" height="34" rx="5" class="fur"/>
|
||||
<rect x="200" y="960" width="36" height="34" rx="5" class="fur"/>
|
||||
<rect x="255" y="960" width="36" height="34" rx="5" class="fur"/>
|
||||
<rect x="310" y="960" width="36" height="34" rx="5" class="fur"/>
|
||||
<rect x="365" y="960" width="36" height="34" rx="5" class="fur"/>
|
||||
<rect x="420" y="960" width="36" height="34" rx="5" class="fur"/>
|
||||
<rect x="475" y="960" width="36" height="34" rx="5" class="fur"/>
|
||||
<rect x="530" y="960" width="36" height="34" rx="5" class="fur"/>
|
||||
<rect x="585" y="960" width="36" height="34" rx="5" class="fur"/>
|
||||
<rect x="640" y="960" width="36" height="34" rx="5" class="fur"/>
|
||||
<rect x="695" y="960" width="36" height="34" rx="5" class="fur"/>
|
||||
<rect x="860" y="960" width="36" height="34" rx="5" class="fur"/>
|
||||
<rect x="915" y="960" width="36" height="34" rx="5" class="fur"/>
|
||||
<rect x="970" y="960" width="36" height="34" rx="5" class="fur"/>
|
||||
<rect x="1025" y="960" width="36" height="34" rx="5" class="fur"/>
|
||||
<rect x="1080" y="960" width="36" height="34" rx="5" class="fur"/>
|
||||
<rect x="1135" y="960" width="36" height="34" rx="5" class="fur"/>
|
||||
<rect x="1190" y="960" width="36" height="34" rx="5" class="fur"/>
|
||||
<rect x="1245" y="960" width="36" height="34" rx="5" class="fur"/>
|
||||
<rect x="200" y="1040" width="36" height="34" rx="5" class="fur"/>
|
||||
<rect x="255" y="1040" width="36" height="34" rx="5" class="fur"/>
|
||||
<rect x="310" y="1040" width="36" height="34" rx="5" class="fur"/>
|
||||
<rect x="365" y="1040" width="36" height="34" rx="5" class="fur"/>
|
||||
<rect x="420" y="1040" width="36" height="34" rx="5" class="fur"/>
|
||||
<rect x="475" y="1040" width="36" height="34" rx="5" class="fur"/>
|
||||
<rect x="530" y="1040" width="36" height="34" rx="5" class="fur"/>
|
||||
<rect x="585" y="1040" width="36" height="34" rx="5" class="fur"/>
|
||||
<rect x="640" y="1040" width="36" height="34" rx="5" class="fur"/>
|
||||
<rect x="695" y="1040" width="36" height="34" rx="5" class="fur"/>
|
||||
<rect x="860" y="1040" width="36" height="34" rx="5" class="fur"/>
|
||||
<rect x="915" y="1040" width="36" height="34" rx="5" class="fur"/>
|
||||
<rect x="970" y="1040" width="36" height="34" rx="5" class="fur"/>
|
||||
<rect x="1025" y="1040" width="36" height="34" rx="5" class="fur"/>
|
||||
<rect x="1080" y="1040" width="36" height="34" rx="5" class="fur"/>
|
||||
<rect x="1135" y="1040" width="36" height="34" rx="5" class="fur"/>
|
||||
<rect x="1190" y="1040" width="36" height="34" rx="5" class="fur"/>
|
||||
<rect x="1245" y="1040" width="36" height="34" rx="5" class="fur"/>
|
||||
<rect x="200" y="1120" width="36" height="34" rx="5" class="fur"/>
|
||||
<rect x="255" y="1120" width="36" height="34" rx="5" class="fur"/>
|
||||
<rect x="310" y="1120" width="36" height="34" rx="5" class="fur"/>
|
||||
<rect x="365" y="1120" width="36" height="34" rx="5" class="fur"/>
|
||||
<rect x="420" y="1120" width="36" height="34" rx="5" class="fur"/>
|
||||
<rect x="475" y="1120" width="36" height="34" rx="5" class="fur"/>
|
||||
<rect x="530" y="1120" width="36" height="34" rx="5" class="fur"/>
|
||||
<rect x="585" y="1120" width="36" height="34" rx="5" class="fur"/>
|
||||
<rect x="640" y="1120" width="36" height="34" rx="5" class="fur"/>
|
||||
<rect x="695" y="1120" width="36" height="34" rx="5" class="fur"/>
|
||||
<rect x="860" y="1120" width="36" height="34" rx="5" class="fur"/>
|
||||
<rect x="915" y="1120" width="36" height="34" rx="5" class="fur"/>
|
||||
<rect x="970" y="1120" width="36" height="34" rx="5" class="fur"/>
|
||||
<rect x="1025" y="1120" width="36" height="34" rx="5" class="fur"/>
|
||||
<rect x="1080" y="1120" width="36" height="34" rx="5" class="fur"/>
|
||||
<rect x="1135" y="1120" width="36" height="34" rx="5" class="fur"/>
|
||||
<rect x="1190" y="1120" width="36" height="34" rx="5" class="fur"/>
|
||||
<rect x="1245" y="1120" width="36" height="34" rx="5" class="fur"/>
|
||||
<circle cx="150" cy="450" r="16" class="fur"/>
|
||||
<path d="M174 434a24 24 0 0 1 0 32M184 424a38 38 0 0 1 0 52" class="fine"/>
|
||||
<circle cx="150" cy="1000" r="16" class="fur"/>
|
||||
<path d="M174 984a24 24 0 0 1 0 32M184 974a38 38 0 0 1 0 52" class="fine"/>
|
||||
<text x="960" y="1240" class="pen" transform="rotate(-2 960 1240)">999 seats — add one</text>
|
||||
<rect x="1500" y="100" width="200" height="1800" class="rm2"/>
|
||||
<text x="1530" y="1740" class="sub" >CORR.</text>
|
||||
<rect x="1700" y="100" width="1000" height="900" class="rm"/>
|
||||
<text x="1730" y="175" class="lbl">PLANT FLOOR</text>
|
||||
<circle cx="2655" cy="145" r="30" class="numc"/><text x="2655" y="158" class="num">12</text>
|
||||
<rect x="1780" y="240" width="340" height="260" class="fur"/>
|
||||
<text x="1950" y="377" class="fl" font-size="20">COAL BOILER</text>
|
||||
<rect x="2200" y="240" width="220" height="200" class="fur"/>
|
||||
<text x="2310" y="347" class="fl" font-size="20">GEN 1</text>
|
||||
<rect x="2460" y="240" width="220" height="200" class="fur"/>
|
||||
<text x="2570" y="347" class="fl" font-size="20">GEN 2</text>
|
||||
<rect x="1780" y="620" width="860" height="60" class="fur"/>
|
||||
<text x="2210" y="657" class="fl" font-size="20">DUCTING</text>
|
||||
<rect x="1780" y="760" width="240" height="160" class="fur"/>
|
||||
<text x="1900" y="847" class="fl" font-size="20">PUMPS</text>
|
||||
<rect x="2100" y="760" width="240" height="160" class="fur"/>
|
||||
<text x="2220" y="847" class="fl" font-size="20">FILTERS</text>
|
||||
<text x="2360" y="880" class="pen" transform="rotate(-2 2360 880)">coal from No.2 road</text>
|
||||
<rect x="1700" y="1000" width="1000" height="550" class="rm"/>
|
||||
<text x="1730" y="1075" class="lbl">TRANSMITTER</text>
|
||||
<text x="1730" y="1113" class="sub">feed to mast</text>
|
||||
<rect x="1800" y="1180" width="500" height="90" class="fur"/>
|
||||
<path d="M1825 1180V1270M1850 1180V1270M1875 1180V1270M1900 1180V1270M1925 1180V1270M1950 1180V1270M1975 1180V1270M2000 1180V1270M2025 1180V1270M2050 1180V1270M2075 1180V1270M2100 1180V1270M2125 1180V1270M2150 1180V1270M2175 1180V1270M2200 1180V1270M2225 1180V1270M2250 1180V1270M2275 1180V1270" class="fine"/>
|
||||
<text x="1800" y="1320" class="sub" >valve racks</text>
|
||||
<rect x="2400" y="1160" width="220" height="140" class="fur"/>
|
||||
<text x="2510" y="1237" class="fl" font-size="20">PANEL</text>
|
||||
<line x1="2650" y1="1230" x2="2650" y2="1030" class="arw" marker-end="url(#ah)"/>
|
||||
<text x="2430" y="1510" class="sub" >MAST CABLE ↑ MOOR</text>
|
||||
<line x1="1500" y1="550" x2="1500" y2="650" class="gap"/>
|
||||
<path d="M1500 550L1600 550A100 100 0 0 1 1500 650" class="swing"/>
|
||||
<line x1="1500" y1="1100" x2="1500" y2="1200" class="gap"/>
|
||||
<path d="M1500 1100L1600 1100A100 100 0 0 1 1500 1200" class="swing"/>
|
||||
<line x1="1700" y1="400" x2="1700" y2="500" class="gap"/>
|
||||
<path d="M1700 400L1600 400A100 100 0 0 0 1700 500" class="swing"/>
|
||||
<line x1="1700" y1="1200" x2="1700" y2="1300" class="gap"/>
|
||||
<path d="M1700 1200L1600 1200A100 100 0 0 0 1700 1300" class="swing"/>
|
||||
<line x1="1600" y1="1880" x2="1600" y2="1990" class="arw" marker-end="url(#ah)"/>
|
||||
<line x1="1600" y1="120" x2="1600" y2="10" class="arw" marker-end="url(#ah)"/>
|
||||
<rect x="50" y="700" width="200" height="400" class="rock"/>
|
||||
<text x="20" y="660" class="sub">← SHEET 7</text>
|
||||
<rect x="250" y="100" width="2450" height="1400" class="rm"/>
|
||||
<text x="280" y="1460" class="lbl">VIGIL HALL</text>
|
||||
<circle cx="2655" cy="145" r="30" class="numc"/><text x="2655" y="158" class="num">13</text>
|
||||
<rect x="800" y="140" width="1200" height="190" class="fur"/>
|
||||
<text x="1400" y="242.7" class="fl" font-size="22">PLATFORM</text>
|
||||
<rect x="900" y="105" width="1000" height="22" class="fur"/>
|
||||
<text x="2030" y="145" class="sub">ROLL OF HONOUR</text>
|
||||
<rect x="1360" y="350" width="80" height="50" class="fur"/>
|
||||
<text x="1460" y="395" class="sub">lectern</text>
|
||||
<rect x="450" y="500" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="505" y="500" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="560" y="500" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="615" y="500" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="670" y="500" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="725" y="500" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="780" y="500" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="835" y="500" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="890" y="500" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="945" y="500" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="1000" y="500" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="1055" y="500" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="1110" y="500" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="1165" y="500" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="1220" y="500" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="1275" y="500" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="1330" y="500" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="1495" y="500" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="1550" y="500" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="1605" y="500" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="1660" y="500" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="1715" y="500" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="1770" y="500" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="1825" y="500" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="1880" y="500" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="1935" y="500" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="1990" y="500" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="2045" y="500" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="2100" y="500" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="2155" y="500" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="2210" y="500" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="2265" y="500" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="2320" y="500" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="2375" y="500" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="450" y="580" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="505" y="580" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="560" y="580" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="615" y="580" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="670" y="580" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="725" y="580" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="780" y="580" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="835" y="580" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="890" y="580" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="945" y="580" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="1000" y="580" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="1055" y="580" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="1110" y="580" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="1165" y="580" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="1220" y="580" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="1275" y="580" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="1330" y="580" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="1495" y="580" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="1550" y="580" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="1605" y="580" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="1660" y="580" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="1715" y="580" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="1770" y="580" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="1825" y="580" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="1880" y="580" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="1935" y="580" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="1990" y="580" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="2045" y="580" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="2100" y="580" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="2155" y="580" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="2210" y="580" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="2265" y="580" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="2320" y="580" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="2375" y="580" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="450" y="660" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="505" y="660" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="560" y="660" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="615" y="660" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="670" y="660" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="725" y="660" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="780" y="660" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="835" y="660" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="890" y="660" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="945" y="660" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="1000" y="660" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="1055" y="660" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="1110" y="660" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="1165" y="660" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="1220" y="660" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="1275" y="660" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="1330" y="660" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="1495" y="660" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="1550" y="660" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="1605" y="660" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="1660" y="660" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="1715" y="660" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="1770" y="660" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="1825" y="660" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="1880" y="660" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="1935" y="660" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="1990" y="660" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="2045" y="660" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="2100" y="660" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="2155" y="660" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="2210" y="660" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="2265" y="660" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="2320" y="660" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="2375" y="660" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="450" y="740" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="505" y="740" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="560" y="740" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="615" y="740" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="670" y="740" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="725" y="740" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="780" y="740" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="835" y="740" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="890" y="740" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="945" y="740" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="1000" y="740" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="1055" y="740" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="1110" y="740" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="1165" y="740" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="1220" y="740" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="1275" y="740" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="1330" y="740" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="1495" y="740" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="1550" y="740" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="1605" y="740" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="1660" y="740" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="1715" y="740" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="1770" y="740" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="1825" y="740" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="1880" y="740" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="1935" y="740" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="1990" y="740" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="2045" y="740" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="2100" y="740" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="2155" y="740" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="2210" y="740" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="2265" y="740" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="2320" y="740" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="2375" y="740" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="450" y="820" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="505" y="820" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="560" y="820" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="615" y="820" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="670" y="820" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="725" y="820" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="780" y="820" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="835" y="820" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="890" y="820" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="945" y="820" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="1000" y="820" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="1055" y="820" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="1110" y="820" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="1165" y="820" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="1220" y="820" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="1275" y="820" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="1330" y="820" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="1495" y="820" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="1550" y="820" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="1605" y="820" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="1660" y="820" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="1715" y="820" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="1770" y="820" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="1825" y="820" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="1880" y="820" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="1935" y="820" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="1990" y="820" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="2045" y="820" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="2100" y="820" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="2155" y="820" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="2210" y="820" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="2265" y="820" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="2320" y="820" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="2375" y="820" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="450" y="900" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="505" y="900" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="560" y="900" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="615" y="900" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="670" y="900" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="725" y="900" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="780" y="900" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="835" y="900" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="890" y="900" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="945" y="900" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="1000" y="900" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="1055" y="900" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="1110" y="900" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="1165" y="900" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="1220" y="900" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="1275" y="900" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="1330" y="900" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="1495" y="900" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="1550" y="900" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="1605" y="900" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="1660" y="900" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="1715" y="900" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="1770" y="900" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="1825" y="900" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="1880" y="900" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="1935" y="900" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="1990" y="900" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="2045" y="900" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="2100" y="900" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="2155" y="900" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="2210" y="900" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="2265" y="900" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="2320" y="900" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="2375" y="900" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="450" y="980" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="505" y="980" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="560" y="980" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="615" y="980" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="670" y="980" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="725" y="980" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="780" y="980" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="835" y="980" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="890" y="980" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="945" y="980" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="1000" y="980" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="1055" y="980" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="1110" y="980" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="1165" y="980" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="1220" y="980" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="1275" y="980" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="1330" y="980" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="1495" y="980" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="1550" y="980" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="1605" y="980" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="1660" y="980" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="1715" y="980" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="1770" y="980" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="1825" y="980" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="1880" y="980" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="1935" y="980" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="1990" y="980" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="2045" y="980" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="2100" y="980" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="2155" y="980" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="2210" y="980" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="2265" y="980" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="2320" y="980" width="34" height="34" rx="6" class="fur"/>
|
||||
<rect x="2375" y="980" width="34" height="34" rx="6" class="fur"/>
|
||||
<circle cx="290" cy="460" r="16" class="fur"/>
|
||||
<path d="M314 444a24 24 0 0 1 0 32M324 434a38 38 0 0 1 0 52" class="fine"/>
|
||||
<circle cx="290" cy="1140" r="16" class="fur"/>
|
||||
<path d="M314 1124a24 24 0 0 1 0 32M324 1114a38 38 0 0 1 0 52" class="fine"/>
|
||||
<rect x="1850" y="1220" width="140" height="140" class="fur"/>
|
||||
<text x="1920" y="1294.9" class="fl" font-size="14">STACK</text>
|
||||
<rect x="2030" y="1220" width="140" height="140" class="fur"/>
|
||||
<text x="2100" y="1294.9" class="fl" font-size="14">STACK</text>
|
||||
<rect x="2210" y="1220" width="140" height="140" class="fur"/>
|
||||
<text x="2280" y="1294.9" class="fl" font-size="14">STACK</text>
|
||||
<text x="600" y="1240" class="pen" transform="rotate(-2 600 1240)">Thursday: chairs out — all 999 stand</text>
|
||||
<text x="1560" y="1440" class="sub">standing room</text>
|
||||
<line x1="250" y1="760" x2="250" y2="940" class="gap"/>
|
||||
<path d="M250 760L430 760A180 180 0 0 1 250 940" class="swing"/>
|
||||
<line x1="2700" y1="750" x2="2700" y2="850" class="gap"/>
|
||||
<path d="M2700 750L2600 750A100 100 0 0 0 2700 850" class="swing"/>
|
||||
<text x="2320" y="720" class="sub">fire exit → galleries</text>
|
||||
|
||||
<rect x="100" y="1560" width="640" height="380" fill="#0f3a70" stroke="#e8f1fb" stroke-width="3"/>
|
||||
<text x="124" y="1604" class="tb" font-weight="700">KEY</text>
|
||||
<path d="M130 1640L130 1710A70 70 0 0 0 200 1640" class="swing"/>
|
||||
<line x1="130" y1="1640" x2="200" y2="1640" stroke="#e8f1fb" stroke-width="7"/>
|
||||
<text x="230" y="1680" class="tb">DOOR</text>
|
||||
<circle cx="460" cy="1670" r="26" class="numc"/>
|
||||
<text x="460" y="1682" class="num" font-size="30">7</text>
|
||||
<text x="500" y="1680" class="tb">LOCATION No.</text>
|
||||
<text x="130" y="1760" class="pen" font-size="25">pencil</text>
|
||||
<text x="230" y="1760" class="tb">= AMENDED AT THE SEAT, 1974–2026</text>
|
||||
<rect x="130" y="1792" width="70" height="44" class="rock"/>
|
||||
<text x="230" y="1822" class="tb">= UNLINED MINE WORKINGS</text>
|
||||
<text x="130" y="1890" class="tb">1 SQUARE = 5 FT · N ↑</text>
|
||||
<rect x="30" y="1610" width="640" height="380" fill="#0f3a70" stroke="#e8f1fb" stroke-width="3"/>
|
||||
<text x="54" y="1654" class="tb" font-weight="700">KEY</text>
|
||||
<path d="M60 1690L60 1760A70 70 0 0 0 130 1690" class="swing"/>
|
||||
<line x1="60" y1="1690" x2="130" y2="1690" stroke="#e8f1fb" stroke-width="7"/>
|
||||
<text x="160" y="1730" class="tb">DOOR</text>
|
||||
<circle cx="390" cy="1720" r="26" class="numc"/>
|
||||
<text x="390" y="1732" class="num" font-size="30">7</text>
|
||||
<text x="430" y="1730" class="tb">LOCATION No.</text>
|
||||
<text x="60" y="1810" class="pen" font-size="25">pencil</text>
|
||||
<text x="160" y="1810" class="tb">= AMENDED AT THE SEAT, 1974–2026</text>
|
||||
<rect x="60" y="1842" width="70" height="44" class="rock"/>
|
||||
<text x="160" y="1872" class="tb">= UNLINED MINE WORKINGS</text>
|
||||
<text x="60" y="1940" class="tb">1 SQUARE = 5 FT · NORTH ←</text>
|
||||
|
||||
<rect x="1900" y="1650" width="870" height="330" fill="#0f3a70" stroke="#e8f1fb" stroke-width="5"/>
|
||||
<line x1="1900" y1="1760" x2="2770" y2="1760" stroke="#e8f1fb" stroke-width="3"/>
|
||||
<line x1="1900" y1="1900" x2="2770" y2="1900" stroke="#e8f1fb" stroke-width="3"/>
|
||||
<text x="1924" y="1694" class="tb">REGIONAL SEAT OF GOVERNMENT 12 · BELLHOUSE</text>
|
||||
<text x="1924" y="1738" class="tb">SHEET 6 OF 7 · LEVEL 3 · ASSEMBLY</text>
|
||||
<text x="1924" y="1815" class="ttl">VIGIL HALL & PLANT</text>
|
||||
<text x="1924" y="1866" class="tb">SCALE: ONE SQUARE = 5 FT</text>
|
||||
<text x="1924" y="1950" class="tb">DRG RSG12/06 · ISSUED 1962 · COPY NOT TO LEAVE THE SEAT</text>
|
||||
<text x="1924" y="1738" class="tb">SHEET 8 OF 8 · PIT GALLERIES</text>
|
||||
<text x="1924" y="1815" class="ttl">VIGIL HALL</text>
|
||||
<text x="1924" y="1866" class="tb">SCALE: ONE SQUARE = 5 FT · SECTION: SO-H04</text>
|
||||
<text x="1924" y="1950" class="tb">DRG RSG12/08 · ISSUED 1962 · COPY NOT TO LEAVE THE SEAT</text>
|
||||
</svg>
|
||||
|
||||
|
Before Width: | Height: | Size: 18 KiB After Width: | Height: | Size: 22 KiB |
|
Before Width: | Height: | Size: 124 KiB After Width: | Height: | Size: 132 KiB |
@@ -609,11 +609,14 @@ is much harder at four**, and the table above says how much.
|
||||
|
||||
## Locations — quick reference
|
||||
|
||||
**The underground is seven blueprint scenes** in the Adventure, one sheet each, drawn as
|
||||
**The underground is eight blueprint scenes** in the Adventure, one sheet each, drawn as
|
||||
the 1962 drawing office issued them with fifty years of pencil amendments. They are
|
||||
2800×2000 at five feet to the square, so tokens and the Foundry grid line up. **Nothing on
|
||||
a sheet gives away a GM secret**; the pencil notes are what the people below wrote.
|
||||
The section drawing (SO-H04) is the overview.
|
||||
2800×2000 at five feet to the square, so tokens and the Foundry grid line up. **North is to
|
||||
the left on every sheet**, matching the section drawing (SO-H04): Level 1 runs from the lobby
|
||||
at the north end to the sick bay and the stair down at the south; Level 2 runs from the
|
||||
crèche under the sick bay north to the pipe room and plant; an incline from the plant floor
|
||||
goes down to the pit galleries. Every corridor end says which sheet it leads to. **Nothing
|
||||
on a sheet gives away a GM secret**; the pencil notes are what the people below wrote.
|
||||
|
||||
| # | Location | Act | Blueprint scene | One line |
|
||||
|---|---|---|---|---|
|
||||
@@ -622,37 +625,20 @@ The section drawing (SO-H04) is the overview.
|
||||
| 3 | The vent | 1 | — | Warm, smells of coal; the crossing |
|
||||
| 4 | The postal pipe | 1/2 | — | How Centre's letters arrive |
|
||||
| 5 | The adit | 1 | — | Filled with rubble in 1975 |
|
||||
| 6 | Lobby and Enquiries | 1 | **Sheet 1** | Mr Ogden; the crossing lands in the blast lock |
|
||||
| 7 | Control Room and studio | 2/3 | **Sheet 2** | Sowerby, the letters, the safe, the tape |
|
||||
| 6 | Lobby and Enquiries | 1 | **Sheet 1** | Mr Ogden; the crossing lands in the blast lock; the wardens' post and the armoury |
|
||||
| 7 | Control Room and studio | 2/3 | **Sheet 2** | Sowerby's office, the studio safe, the tape |
|
||||
| 8 | Registry | 2 | **Sheet 3** | Pennyfeather and the Order, in the strongroom |
|
||||
| 9 | Sick bay | 2/3 | **Sheet 4** | Marlow's side room, Larkhall's office, the delivery room |
|
||||
| 10 | Crèche | 2/3 | **Sheet 5** | Kit, Nell, the drawings, the dormitory speaker |
|
||||
| 11 | Pipe room | 2 | **Sheet 2** | Centre's in-tray |
|
||||
| 11 | Pipe room | 2 | **Sheet 6** | Centre's in-tray |
|
||||
| 12 | Plant floor | 3 | **Sheet 6** | The transmitter room — the mast route |
|
||||
| 13 | Vigil hall | 2/3 | **Sheet 6** | The chant; Thursday's assembly |
|
||||
| 14 | The vegetable tunnels | 2 | **Sheet 7** | Lamps, beds, trout tanks, hens — the run route |
|
||||
| 13 | Vigil hall | 2/3 | **Sheet 8** | The chant; Thursday's assembly, all 999 standing |
|
||||
| 14 | The vegetable tunnels | 2 | **Sheet 7** | Beds, trout tanks, hens, the Buffer Depot — the run route |
|
||||
| 15 | The Sump | 2 | **Sheet 7** | Four cells; the detention ends here |
|
||||
|
||||
**Which sheet when:** Sheet 1 for Act One's arrival and interview; Sheets 7 and 1–3 for the
|
||||
detention, wherever the guards catch them; Sheet 2 for getting the tape; Sheet 5 for the
|
||||
cure; Sheet 6 for the broadcast.
|
||||
|
||||
---|---|---|---|
|
||||
| 1 | Wetherlaw farm | 1 | Coal soot, and Joan with a brush |
|
||||
| 2 | The soot edge | 1 | A straight line of soot across the fields |
|
||||
| 3 | The vent | 1 | Warm, smells of coal; the crossing |
|
||||
| 4 | The postal pipe | 1/2 | How Centre's letters arrive |
|
||||
| 5 | The adit | 1 | Filled with rubble in 1975 |
|
||||
| 6 | Lobby and Enquiries | 1 | Mr Ogden |
|
||||
| 7 | Control Room and studio | 2/3 | Sowerby, the letters, the safe, the tape |
|
||||
| 8 | Registry | 2 | Pennyfeather and the Order |
|
||||
| 9 | Sick bay | 2/3 | Marlow, Larkhall, Ruth |
|
||||
| 10 | Crèche | 2/3 | Kit, Nell, the humming, the speaker |
|
||||
| 11 | Pipe room | 2 | Centre's in-tray |
|
||||
| 12 | Plant floor | 3 | The transmitter |
|
||||
| 13 | Vigil hall | 2/3 | The chant; Thursday's assembly |
|
||||
| 14 | The vegetable tunnels | 2 | Lamps, trout, hens |
|
||||
| 15 | The Sump | 2 | The cells |
|
||||
**Which sheet when:** Sheet 1 for Act One's arrival and interview. For the detention, whichever
|
||||
sheet the guards catch them on, then Sheet 7. Sheet 2 for getting the tape, Sheet 5 for the
|
||||
cure, and Sheets 8 and 6 for the broadcast: the assembly, and the transmitter.
|
||||
|
||||
---
|
||||
|
||||
|
||||
@@ -14,10 +14,11 @@ and the **quarantine unit** — are bestiary entries and their prompts live in
|
||||
the art; only the uses below changed. **Mr Smith must never be drawn** — a face is the one
|
||||
thing the case says nobody can recall — and no prompt for him belongs in this sheet.
|
||||
|
||||
**v1.1 added seven blueprint scenes** of the underground, `art/maps/bh-*.webp`. They are
|
||||
**v1.1 added eight blueprint scenes** of the underground, `art/maps/bh-*.webp`. They are
|
||||
drawn, not generated, by `tools/bellhouse-plans.mjs` (white line on blueprint blue, Courier
|
||||
lettering, pencil amendments in yellow); edit the script and run it with `--render`. No
|
||||
prompt belongs here for them.
|
||||
lettering, pencil amendments in yellow, north to the left as on the section). Edit the
|
||||
script, run it with `--check` (doors on shared walls, swings clear, furniture inside its
|
||||
room, every room reachable), then `--render`. No prompt belongs here for them.
|
||||
|
||||
---
|
||||
|
||||
|
||||
@@ -11,7 +11,7 @@
|
||||
"play": "node tools/playthrough.mjs",
|
||||
"mj": "node tools/mj-queue.mjs",
|
||||
"simulate": "node tools/simulate.mjs",
|
||||
"check": "bun tools/check-rules.mjs && bun tools/check-kits.mjs && bun tools/check-lang.mjs && bun tools/check-templates.mjs && bun tools/check-behaviour.mjs && bun tools/check-scenarios.mjs && bun tools/check-rollable.mjs && bun tools/check-outcomes.mjs && bun tools/check-creatures.mjs && bun tools/check-powers.mjs && bun tools/check-anatomy.mjs && bun tools/check-lethality.mjs && bun tools/check-focus.mjs && bun tools/check-firstblood.mjs && bun tools/check-attackers.mjs && bun tools/check-fight-tail.mjs && bun tools/check-packs.mjs && bun tools/detention-tables.mjs --check && bun tools/check-cited.mjs && bun tools/check-figures.mjs && bun tools/check-handouts.mjs && bun tools/check-bestiary.mjs",
|
||||
"check": "bun tools/check-rules.mjs && bun tools/check-kits.mjs && bun tools/check-lang.mjs && bun tools/check-templates.mjs && bun tools/check-behaviour.mjs && bun tools/check-scenarios.mjs && bun tools/check-rollable.mjs && bun tools/check-outcomes.mjs && bun tools/check-creatures.mjs && bun tools/check-powers.mjs && bun tools/check-anatomy.mjs && bun tools/check-lethality.mjs && bun tools/check-focus.mjs && bun tools/check-firstblood.mjs && bun tools/check-attackers.mjs && bun tools/check-fight-tail.mjs && bun tools/check-packs.mjs && bun tools/detention-tables.mjs --check && bun tools/bellhouse-plans.mjs --check && bun tools/check-cited.mjs && bun tools/check-figures.mjs && bun tools/check-handouts.mjs && bun tools/check-bestiary.mjs",
|
||||
"test": "bun run check",
|
||||
"readme": "bun tools/update-readme.mjs"
|
||||
},
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/**
|
||||
* STANDING ORDER — the Bellhouse blueprints: seven floor plans of the Seat, one per
|
||||
* STANDING ORDER — the Bellhouse blueprints: eight floor plans of the Seat, one per
|
||||
* Foundry scene.
|
||||
*
|
||||
* Drawn from declared rooms rather than generated, for culland-hall.svg's reason: a room,
|
||||
@@ -8,8 +8,21 @@
|
||||
* drawn one. Labels are what a 1962 drawing office would have written, plus the pencil
|
||||
* amendments of fifty years below; nothing on a plan tells the players a GM secret.
|
||||
*
|
||||
* The sheets follow the section drawing (SO-H04, bellhouse-section.svg): locations 6-9 on
|
||||
* Level 1, 10-12 on Level 2, and 13-15 in the pit galleries the section does not draw.
|
||||
* North is to the left on every sheet, as on the section (looking west): the lobby is the
|
||||
* north end, the sick bay and the stair down the south. Every sheet names where its
|
||||
* corridors lead, so the eight read as one building.
|
||||
*
|
||||
* node tools/bellhouse-plans.mjs write art/maps/bh-*.svg
|
||||
* node tools/bellhouse-plans.mjs --render and render each to .webp (rsvg-convert, cwebp)
|
||||
* node tools/bellhouse-plans.mjs --check hold every sheet to the rules below, write nothing
|
||||
*
|
||||
* WHAT --check HOLDS. Every door and archway sits on a wall two different spaces share (or
|
||||
* on an outside wall it is declared to leave by). Every door swings into a space, clear of
|
||||
* furniture and lettering. Every piece of furniture sits wholly inside one room. No two
|
||||
* rooms overlap unless one is inside the other. Every room can be walked to from the
|
||||
* sheet's way in. It does not judge whether a room is sensible; that is a person's job.
|
||||
*/
|
||||
import { writeFileSync } from "node:fs";
|
||||
import { execFileSync } from "node:child_process";
|
||||
@@ -17,29 +30,42 @@ import path from "node:path";
|
||||
|
||||
const ROOT = path.resolve(path.dirname(new URL(import.meta.url).pathname), "..");
|
||||
const OUT = path.join(ROOT, "art", "maps");
|
||||
const S = 100, W = 28, H = 20;
|
||||
const S = 100, W = 28, H = 20, SHEETS = 8;
|
||||
|
||||
const esc = s => String(s).replace(/&/g, "&").replace(/</g, "<").replace(/>/g, ">");
|
||||
const p = n => +(n * S).toFixed(1);
|
||||
|
||||
/* ---------------------------------------------------------------- primitives */
|
||||
|
||||
/* Approximate lettering widths, in squares per character, for the checker. */
|
||||
const CHAR = { lbl: 0.2, sub: 0.126, pen: 0.13, tb: 0.12 };
|
||||
|
||||
function sheet() {
|
||||
const g = [];
|
||||
const geo = { rooms: [], doors: [], items: [], labels: [], exits: [] };
|
||||
const item = (x, y, w, h, kind) => geo.items.push({ x, y, w, h, kind });
|
||||
const label = (x, y, t, cls, size) => {
|
||||
const cw = CHAR[cls] ?? 0.12;
|
||||
const k = size ? size / { lbl: 30, sub: 21, pen: 27, tb: 20 }[cls] : 1;
|
||||
geo.labels.push({ x, y: y - 0.24 * k, w: t.length * cw * k, h: 0.3 * k, text: t, kind: cls });
|
||||
};
|
||||
const api = {
|
||||
g,
|
||||
room(x, y, w, h, label, { sub, n, cls = "rm", lx = 0.3, ly = 0.75 } = {}) {
|
||||
g, geo,
|
||||
room(x, y, w, h, name, { sub, n, cls = "rm", lx = 0.3, ly = 0.75, entry = false } = {}) {
|
||||
g.push(`<rect x="${p(x)}" y="${p(y)}" width="${p(w)}" height="${p(h)}" class="${cls}"/>`);
|
||||
if (label) g.push(`<text x="${p(x + lx)}" y="${p(y + ly)}" class="lbl">${esc(label)}</text>`);
|
||||
if (sub) g.push(`<text x="${p(x + lx)}" y="${p(y + ly + 0.38)}" class="sub">${esc(sub)}</text>`);
|
||||
geo.rooms.push({ x, y, w, h, name: name ?? `(${x},${y})`, entry });
|
||||
if (name) { g.push(`<text x="${p(x + lx)}" y="${p(y + ly)}" class="lbl">${esc(name)}</text>`); label(x + lx, y + ly, name, "lbl"); }
|
||||
if (sub) { g.push(`<text x="${p(x + lx)}" y="${p(y + ly + 0.38)}" class="sub">${esc(sub)}</text>`); label(x + lx, y + ly + 0.38, sub, "sub"); }
|
||||
if (n != null) {
|
||||
g.push(`<circle cx="${p(x + w - 0.45)}" cy="${p(y + 0.45)}" r="30" class="numc"/>`
|
||||
+ `<text x="${p(x + w - 0.45)}" y="${p(y + 0.45) + 13}" class="num">${n}</text>`);
|
||||
item(x + w - 0.75, y + 0.15, 0.6, 0.6, "number");
|
||||
}
|
||||
},
|
||||
/* A door on a wall: `v` for a vertical wall at x, else horizontal at y. A gap in the
|
||||
wall and a quarter-circle swing, the way a drawing office draws one. */
|
||||
door(x, y, v, len = 1, flip = false) {
|
||||
wall and a quarter-circle swing, the way a drawing office draws one. `flip` swings it
|
||||
to the left of a vertical wall, or above a horizontal one. */
|
||||
door(x, y, v, len = 1, flip = false, { out = false } = {}) {
|
||||
const L = p(len), X = p(x), Y = p(y), d = flip ? -1 : 1;
|
||||
if (v) {
|
||||
g.push(`<line x1="${X}" y1="${Y}" x2="${X}" y2="${Y + L}" class="gap"/>`,
|
||||
@@ -48,73 +74,99 @@ function sheet() {
|
||||
g.push(`<line x1="${X}" y1="${Y}" x2="${X + L}" y2="${Y}" class="gap"/>`,
|
||||
`<path d="M${X} ${Y}L${X} ${Y + d * L}A${L} ${L} 0 0 ${d > 0 ? 0 : 1} ${X + L} ${Y}" class="swing"/>`);
|
||||
}
|
||||
geo.doors.push({ x, y, v, len, d, out, swing: true });
|
||||
},
|
||||
/* An open archway: just the gap. */
|
||||
arch(x, y, v, len = 2, cls = "gap") {
|
||||
const X = p(x), Y = p(y), L = p(len);
|
||||
g.push(v ? `<line x1="${X}" y1="${Y}" x2="${X}" y2="${Y + L}" class="${cls}"/>`
|
||||
: `<line x1="${X}" y1="${Y}" x2="${X + L}" y2="${Y}" class="${cls}"/>`);
|
||||
geo.doors.push({ x, y, v, len, d: 0, out: false, swing: false });
|
||||
},
|
||||
box(x, y, w, h, label, size = 20) {
|
||||
box(x, y, w, h, text, size = 20) {
|
||||
g.push(`<rect x="${p(x)}" y="${p(y)}" width="${p(w)}" height="${p(h)}" class="fur"/>`);
|
||||
if (label) g.push(`<text x="${p(x + w / 2)}" y="${p(y + h / 2) + size * 0.35}" class="fl" font-size="${size}">${esc(label)}</text>`);
|
||||
if (text) g.push(`<text x="${p(x + w / 2)}" y="${p(y + h / 2) + size * 0.35}" class="fl" font-size="${size}">${esc(text)}</text>`);
|
||||
item(x, y, w, h, text || "box");
|
||||
},
|
||||
chair(x, y) { g.push(`<rect x="${p(x)}" y="${p(y)}" width="34" height="34" rx="6" class="fur"/>`); },
|
||||
chair(x, y) { g.push(`<rect x="${p(x)}" y="${p(y)}" width="34" height="34" rx="6" class="fur"/>`); item(x, y, 0.34, 0.34, "chair"); },
|
||||
bed(x, y, vert = true, w = 0.9, l = 2) {
|
||||
const [bw, bh] = vert ? [w, l] : [l, w];
|
||||
g.push(`<rect x="${p(x)}" y="${p(y)}" width="${p(bw)}" height="${p(bh)}" class="fur"/>`);
|
||||
g.push(vert ? `<line x1="${p(x)}" y1="${p(y + 0.45)}" x2="${p(x + bw)}" y2="${p(y + 0.45)}" class="fine"/>`
|
||||
: `<line x1="${p(x + 0.45)}" y1="${p(y)}" x2="${p(x + 0.45)}" y2="${p(y + bh)}" class="fine"/>`);
|
||||
item(x, y, bw, bh, "bed");
|
||||
},
|
||||
shelf(x, y, w, h) {
|
||||
shelf(x, y, w, h, kind = "shelf") {
|
||||
g.push(`<rect x="${p(x)}" y="${p(y)}" width="${p(w)}" height="${p(h)}" class="fur"/>`);
|
||||
const lines = [];
|
||||
if (w >= h) for (let i = x + 0.25; i < x + w; i += 0.25) lines.push(`M${p(i)} ${p(y)}V${p(y + h)}`);
|
||||
else for (let j = y + 0.25; j < y + h; j += 0.25) lines.push(`M${p(x)} ${p(j)}H${p(x + w)}`);
|
||||
if (w >= h) for (let i = x + 0.25; i < x + w - 0.01; i += 0.25) lines.push(`M${p(i)} ${p(y)}V${p(y + h)}`);
|
||||
else for (let j = y + 0.25; j < y + h - 0.01; j += 0.25) lines.push(`M${p(x)} ${p(j)}H${p(x + w)}`);
|
||||
g.push(`<path d="${lines.join("")}" class="fine"/>`);
|
||||
item(x, y, w, h, kind);
|
||||
},
|
||||
reels(x, y, label = "TAPE") {
|
||||
reels(x, y, text = "TAPE") {
|
||||
g.push(`<rect x="${p(x)}" y="${p(y)}" width="200" height="120" class="fur"/>`,
|
||||
`<circle cx="${p(x + 0.5)}" cy="${p(y + 0.5)}" r="32" class="fine"/>`,
|
||||
`<circle cx="${p(x + 1.5)}" cy="${p(y + 0.5)}" r="32" class="fine"/>`,
|
||||
`<text x="${p(x + 1)}" y="${p(y + 1.12)}" class="fl" font-size="15">${esc(label)}</text>`);
|
||||
`<text x="${p(x + 1)}" y="${p(y + 1.12)}" class="fl" font-size="15">${esc(text)}</text>`);
|
||||
item(x, y, 2, 1.2, "reels");
|
||||
},
|
||||
safe(x, y) {
|
||||
g.push(`<rect x="${p(x)}" y="${p(y)}" width="80" height="80" class="fur"/>`,
|
||||
`<path d="M${p(x)} ${p(y)}l80 80M${p(x) + 80} ${p(y)}l-80 80" class="fine"/>`,
|
||||
`<text x="${p(x + 0.4)}" y="${p(y + 1.15)}" class="fl" font-size="16">SAFE</text>`);
|
||||
`<text x="${p(x + 0.4)}" y="${p(y + 1.1)}" class="fl" font-size="16">SAFE</text>`);
|
||||
item(x, y, 0.8, 1.15, "safe");
|
||||
},
|
||||
speaker(x, y) {
|
||||
g.push(`<circle cx="${p(x)}" cy="${p(y)}" r="16" class="fur"/>`,
|
||||
`<path d="M${p(x) + 24} ${p(y) - 16}a24 24 0 0 1 0 32M${p(x) + 34} ${p(y) - 26}a38 38 0 0 1 0 52" class="fine"/>`);
|
||||
item(x - 0.16, y - 0.26, 0.9, 0.52, "speaker");
|
||||
},
|
||||
round(x, y, r, label) {
|
||||
round(x, y, r, text) {
|
||||
g.push(`<circle cx="${p(x)}" cy="${p(y)}" r="${p(r)}" class="fur"/>`);
|
||||
if (label) g.push(`<text x="${p(x)}" y="${p(y) + 7}" class="fl" font-size="18">${esc(label)}</text>`);
|
||||
if (text) g.push(`<text x="${p(x)}" y="${p(y) + 7}" class="fl" font-size="18">${esc(text)}</text>`);
|
||||
item(x - r, y - r, 2 * r, 2 * r, text || "round");
|
||||
},
|
||||
stairs(x, y, w, h, label = "STAIR") {
|
||||
peg(x, y) { g.push(`<circle cx="${p(x)}" cy="${p(y)}" r="7" fill="#e8f1fb"/>`); item(x - 0.07, y - 0.07, 0.14, 0.14, "peg"); },
|
||||
/* A flight of stairs is a room of its own: you walk through it. */
|
||||
stairs(x, y, w, h, text, { vert = false, entry = false } = {}) {
|
||||
g.push(`<rect x="${p(x)}" y="${p(y)}" width="${p(w)}" height="${p(h)}" class="rm2"/>`);
|
||||
const d = [];
|
||||
for (let j = y + 0.3; j < y + h; j += 0.3) d.push(`M${p(x)} ${p(j)}H${p(x + w)}`);
|
||||
g.push(`<path d="${d.join("")}" class="fine"/>`,
|
||||
`<text x="${p(x + w / 2)}" y="${p(y + h / 2) + 8}" class="fl bg" font-size="20">${esc(label)}</text>`);
|
||||
if (vert) for (let i = x + 0.3; i < x + w - 0.01; i += 0.3) d.push(`M${p(i)} ${p(y)}V${p(y + h)}`);
|
||||
else for (let j = y + 0.3; j < y + h - 0.01; j += 0.3) d.push(`M${p(x)} ${p(j)}H${p(x + w)}`);
|
||||
g.push(`<path d="${d.join("")}" class="fine"/>`);
|
||||
const tw = text.length * 0.12 + 0.2;
|
||||
g.push(`<rect x="${p(x + w / 2 - tw / 2)}" y="${p(y + h / 2) - 18}" width="${p(tw)}" height="30" fill="#11417d"/>`,
|
||||
`<text x="${p(x + w / 2)}" y="${p(y + h / 2) + 5}" class="fl" font-size="19">${esc(text)}</text>`);
|
||||
geo.rooms.push({ x, y, w, h, name: text, entry, stairs: true });
|
||||
},
|
||||
blast(x, y, h) {
|
||||
g.push(`<rect x="${p(x) - 22}" y="${p(y)}" width="44" height="${p(h)}" class="blast"/>`);
|
||||
const d = [];
|
||||
for (let j = y; j < y + h; j += 0.2) d.push(`M${p(x) - 22} ${p(j) + 20}l44 -20`);
|
||||
for (let j = y; j < y + h - 0.01; j += 0.2) d.push(`M${p(x) - 22} ${p(j) + 20}l44 -20`);
|
||||
g.push(`<path d="${d.join("")}" class="fine"/>`);
|
||||
geo.doors.push({ x, y, v: true, len: h, d: 0, out: true, swing: false });
|
||||
},
|
||||
/* The drawing office's own lettering, outside a room. */
|
||||
text(x, y, t, cls = "sub", extra = "") {
|
||||
g.push(`<text x="${p(x)}" y="${p(y)}" class="${cls}" ${extra}>${esc(t)}</text>`);
|
||||
/* The drawing office's own lettering. */
|
||||
text(x, y, t, cls = "sub") {
|
||||
g.push(`<text x="${p(x)}" y="${p(y)}" class="${cls}">${esc(t)}</text>`);
|
||||
label(x, y, t, cls);
|
||||
},
|
||||
/* Pencil: fifty years of amendments in a different hand. */
|
||||
pencil(x, y, t, rot = -2) {
|
||||
g.push(`<text x="${p(x)}" y="${p(y)}" class="pen" transform="rotate(${rot} ${p(x)} ${p(y)})">${esc(t)}</text>`);
|
||||
label(x, y, t, "pen");
|
||||
},
|
||||
arrow(x1, y1, x2, y2) {
|
||||
g.push(`<line x1="${p(x1)}" y1="${p(y1)}" x2="${p(x2)}" y2="${p(y2)}" class="arw" marker-end="url(#ah)"/>`);
|
||||
/* Where a corridor leaves the sheet: an arrow to the edge and the sheet it reaches. */
|
||||
exit(x, y, dir, t, { tx, ty } = {}) {
|
||||
const [dx, dy] = { l: [-1, 0], r: [1, 0], u: [0, -1], d: [0, 1] }[dir];
|
||||
const x2 = dx < 0 ? 0.15 : dx > 0 ? W - 0.15 : x, y2 = dy < 0 ? 0.15 : dy > 0 ? H - 0.15 : y;
|
||||
g.push(`<line x1="${p(x)}" y1="${p(y)}" x2="${p(x2)}" y2="${p(y2)}" class="arw" marker-end="url(#ah)"/>`);
|
||||
const lx = tx ?? (dx > 0 ? x2 - t.length * CHAR.sub - 0.1 : dx < 0 ? 0.2 : x + 0.2);
|
||||
const ly = ty ?? (dy === 0 ? y - 0.2 : dy < 0 ? 0.45 : H - 0.3);
|
||||
g.push(`<text x="${p(lx)}" y="${p(ly)}" class="sub exit">${esc(t)}</text>`);
|
||||
if (t) label(lx, ly, t, "sub");
|
||||
geo.exits.push({ x, y, text: t });
|
||||
},
|
||||
raw(s) { g.push(s); }
|
||||
};
|
||||
@@ -126,6 +178,7 @@ const STYLE = `
|
||||
.rm2 { fill:#11417d; stroke:#e8f1fb; stroke-width:5; }
|
||||
.rock { fill:#0e3668; stroke:#9fbde0; stroke-width:4; stroke-dasharray:18 10; }
|
||||
.gap { stroke:#154a8a; stroke-width:12; }
|
||||
.gap2 { stroke:#11417d; stroke-width:12; }
|
||||
.rgap { stroke:#0e3668; stroke-width:12; }
|
||||
.swing { fill:none; stroke:#e8f1fb; stroke-width:3; }
|
||||
.fur { fill:#1b579c; stroke:#cfe0f3; stroke-width:3; }
|
||||
@@ -139,6 +192,7 @@ const STYLE = `
|
||||
.lbl { font-family:'Courier New',Courier,monospace; font-weight:700; font-size:30px;
|
||||
fill:#f4f8fd; letter-spacing:2px; }
|
||||
.sub { font-family:'Courier New',Courier,monospace; font-size:21px; fill:#b9d0ea; }
|
||||
.exit { font-weight:700; fill:#e8f1fb; }
|
||||
.fl { font-family:'Courier New',Courier,monospace; font-size:18px; fill:#e8f1fb;
|
||||
text-anchor:middle; }
|
||||
.ttl { font-family:'Courier New',Courier,monospace; font-weight:700; font-size:34px;
|
||||
@@ -148,31 +202,40 @@ const STYLE = `
|
||||
fill:#ffe98a; }
|
||||
`;
|
||||
|
||||
function render(no, title, level, draw, { legend = [1, 15.6] } = {}) {
|
||||
const TITLE_BLOCK = { x: 19, y: 16.5, w: 8.7, h: 3.3 };
|
||||
const LEGEND = { w: 6.4, h: 3.8 };
|
||||
|
||||
function build(plan) {
|
||||
const s = sheet();
|
||||
draw(s);
|
||||
plan.draw(s);
|
||||
const legend = plan.legend ?? [0.3, 16.1];
|
||||
return { s, legend };
|
||||
}
|
||||
|
||||
function render(plan) {
|
||||
const { s, legend } = build(plan);
|
||||
const { no, title, level } = plan;
|
||||
|
||||
const grid = [];
|
||||
for (let i = 1; i < W; i++) grid.push(`M${i * S} 0V${H * S}`);
|
||||
for (let j = 1; j < H; j++) grid.push(`M0 ${j * S}H${W * S}`);
|
||||
|
||||
// Title block, bottom right, as a drawing office would box it.
|
||||
const tb = [19, 16.5, 8.7, 3.3];
|
||||
const [tx, ty, tw, th] = tb.map(p);
|
||||
const [tx, ty, tw, th] = [TITLE_BLOCK.x, TITLE_BLOCK.y, TITLE_BLOCK.w, TITLE_BLOCK.h].map(p);
|
||||
const block = `
|
||||
<rect x="${tx}" y="${ty}" width="${tw}" height="${th}" fill="#0f3a70" stroke="#e8f1fb" stroke-width="5"/>
|
||||
<line x1="${tx}" y1="${ty + 110}" x2="${tx + tw}" y2="${ty + 110}" stroke="#e8f1fb" stroke-width="3"/>
|
||||
<line x1="${tx}" y1="${ty + 250}" x2="${tx + tw}" y2="${ty + 250}" stroke="#e8f1fb" stroke-width="3"/>
|
||||
<text x="${tx + 24}" y="${ty + 44}" class="tb">REGIONAL SEAT OF GOVERNMENT 12 · BELLHOUSE</text>
|
||||
<text x="${tx + 24}" y="${ty + 88}" class="tb">SHEET ${no} OF 7 · ${esc(level)}</text>
|
||||
<text x="${tx + 24}" y="${ty + 88}" class="tb">SHEET ${no} OF ${SHEETS} · ${esc(level)}</text>
|
||||
<text x="${tx + 24}" y="${ty + 165}" class="ttl">${esc(title)}</text>
|
||||
<text x="${tx + 24}" y="${ty + 216}" class="tb">SCALE: ONE SQUARE = 5 FT</text>
|
||||
<text x="${tx + 24}" y="${ty + 216}" class="tb">SCALE: ONE SQUARE = 5 FT · SECTION: SO-H04</text>
|
||||
<text x="${tx + 24}" y="${ty + 300}" class="tb">DRG RSG12/${String(no).padStart(2, "0")} · ISSUED 1962 · COPY NOT TO LEAVE THE SEAT</text>`;
|
||||
|
||||
// Legend, bottom left.
|
||||
const [lx, ly] = legend.map(p);
|
||||
const key = `
|
||||
<rect x="${lx}" y="${ly}" width="640" height="${p(3.9) - 10}" fill="#0f3a70" stroke="#e8f1fb" stroke-width="3"/>
|
||||
<rect x="${lx}" y="${ly}" width="${p(LEGEND.w)}" height="${p(LEGEND.h)}" fill="#0f3a70" stroke="#e8f1fb" stroke-width="3"/>
|
||||
<text x="${lx + 24}" y="${ly + 44}" class="tb" font-weight="700">KEY</text>
|
||||
<path d="M${lx + 30} ${ly + 80}L${lx + 30} ${ly + 150}A70 70 0 0 0 ${lx + 100} ${ly + 80}" class="swing"/>
|
||||
<line x1="${lx + 30}" y1="${ly + 80}" x2="${lx + 100}" y2="${ly + 80}" stroke="#e8f1fb" stroke-width="7"/>
|
||||
@@ -184,7 +247,7 @@ function render(no, title, level, draw, { legend = [1, 15.6] } = {}) {
|
||||
<text x="${lx + 130}" y="${ly + 200}" class="tb">= AMENDED AT THE SEAT, 1974–2026</text>
|
||||
<rect x="${lx + 30}" y="${ly + 232}" width="70" height="44" class="rock"/>
|
||||
<text x="${lx + 130}" y="${ly + 262}" class="tb">= UNLINED MINE WORKINGS</text>
|
||||
<text x="${lx + 30}" y="${ly + 330}" class="tb">1 SQUARE = 5 FT · N ↑</text>`;
|
||||
<text x="${lx + 30}" y="${ly + 330}" class="tb">1 SQUARE = 5 FT · NORTH ←</text>`;
|
||||
|
||||
return `<svg xmlns="http://www.w3.org/2000/svg" width="${W * S}" height="${H * S}" viewBox="0 0 ${W * S} ${H * S}">
|
||||
<!-- STANDING ORDER — ${esc(title)}. Generated by tools/bellhouse-plans.mjs; edit that, not this. -->
|
||||
@@ -205,186 +268,222 @@ function render(no, title, level, draw, { legend = [1, 15.6] } = {}) {
|
||||
|
||||
/* ---------------------------------------------------------------- the sheets */
|
||||
|
||||
const MAIN = "MAIN CORRIDOR", LOWER = "LOWER CORRIDOR";
|
||||
|
||||
export const PLANS = [
|
||||
|
||||
/* Level 1, the adit end. The crossing lands in the blast lock; the adit beyond the blast
|
||||
door has been rubble since 1975. */
|
||||
{ key: "bh-lobby", no: 1, title: "LOBBY & ENQUIRIES", level: "LEVEL 1 · ENTRY", draw: s => {
|
||||
s.text(0.3, 0.6, "FROM ADIT (SEALED 1975)");
|
||||
s.room(1, 6, 4, 6, "BLAST LOCK", { sub: "outer lock" });
|
||||
s.room(1, 6, 4, 6, "BLAST LOCK", { sub: "outer lock", entry: true });
|
||||
s.blast(1, 8, 2);
|
||||
s.raw(`<circle cx="${p(3)}" cy="${p(10)}" r="${p(1.1)}" fill="none" stroke="#ffe98a" stroke-width="4" stroke-dasharray="14 10"/>`);
|
||||
s.pencil(1.6, 11.6, "air goes wrong here", -3);
|
||||
s.raw(`<circle cx="${p(3.1)}" cy="${p(9.6)}" r="${p(1)}" fill="none" stroke="#ffe98a" stroke-width="4" stroke-dasharray="14 10"/>`);
|
||||
s.pencil(1.5, 11.5, "air goes wrong here", -3);
|
||||
s.text(0.2, 7.6, "ADIT");
|
||||
s.room(5, 6, 4, 6, "DECONTAM.", { sub: "showers · lockers" });
|
||||
for (const y of [8, 9.3, 10.6]) s.round(6, y, 0.3);
|
||||
for (const y of [8.4, 9.6, 10.8]) s.round(6.7, y, 0.3);
|
||||
s.shelf(7.9, 7.4, 0.8, 4.2);
|
||||
s.room(9, 3, 10, 12, "LOBBY", { n: 6, sub: "public waiting" });
|
||||
s.box(14.5, 5.2, 3.8, 0.8, "ENQUIRIES COUNTER");
|
||||
s.box(17.5, 6, 0.8, 2.4);
|
||||
for (const x of [10, 11, 12]) for (const y of [9, 11, 13]) { s.chair(x, y); }
|
||||
s.box(9.8, 8.4, 2.9, 0.4); s.box(9.8, 10.4, 2.9, 0.4); s.box(9.8, 12.4, 2.9, 0.4);
|
||||
s.box(15, 14.4, 3.6, 0.35, "NOTICEBOARD", 14);
|
||||
s.pencil(14.6, 13.9, "housing list — see Mr Ogden", -1);
|
||||
s.room(19, 3, 5, 5, "ENQUIRIES", { sub: "Mr Ogden" });
|
||||
s.box(20, 4.6, 2, 1, "DESK"); s.chair(21, 5.8); s.shelf(23.1, 3.6, 0.7, 3.6);
|
||||
s.round(20.3, 7.2, 0.25, "☎");
|
||||
s.room(19, 8, 5, 4, "INTERVIEW", { sub: "the door does not lock" });
|
||||
s.box(20.4, 9.8, 2.2, 1.1, "TABLE");
|
||||
s.chair(20.6, 9.3); s.chair(21.8, 9.3); s.chair(20.6, 11); s.chair(21.8, 11);
|
||||
s.room(19, 12, 5, 3, "WARDENS' POST");
|
||||
s.shelf(19.4, 13.4, 2.5, 0.5); s.text(19.4, 14.6, "truncheon rack", "sub");
|
||||
s.room(12, 0, 3, 3, null, { cls: "rm2" }); s.text(12.2, 1.3, "MAIN", "lbl"); s.text(12.2, 1.9, "CORRIDOR", "sub");
|
||||
s.arrow(13.5, 2.6, 13.5, 0.3);
|
||||
s.door(5, 8.5, true, 1); s.door(9, 8.5, true, 1);
|
||||
s.door(19, 4.8, true, 1, true); s.door(19, 9.2, true, 1, true); s.door(19, 13, true, 1, true);
|
||||
s.arch(12.5, 3, false, 2);
|
||||
s.arrow(0.5, 0.9, 0.5, 5.5);
|
||||
s.box(14.2, 5, 3.8, 0.8, "ENQUIRIES COUNTER");
|
||||
s.box(17.2, 5.8, 0.8, 2.4);
|
||||
for (const y of [8.4, 10.4, 12.4]) {
|
||||
s.box(10, y, 2.9, 0.4);
|
||||
for (const x of [10.2, 11.2, 12.2]) s.chair(x, y + 0.55);
|
||||
}
|
||||
s.box(14, 14.4, 3.6, 0.35, "NOTICEBOARD", 14);
|
||||
s.pencil(13.6, 13.9, "housing list — see Mr Ogden", -1);
|
||||
s.room(19, 3, 4.5, 4.5, "ENQUIRIES", { sub: "Mr Ogden" });
|
||||
s.box(20.2, 4.9, 2, 1, "DESK"); s.chair(21, 6.1); s.shelf(22.7, 3.9, 0.6, 2.4);
|
||||
s.round(22.9, 7, 0.25, "☎");
|
||||
s.room(19, 7.5, 4.5, 4, "INTERVIEW", { sub: "does not lock" });
|
||||
s.box(20.2, 9.3, 2.2, 1.1, "TABLE");
|
||||
s.chair(20.4, 8.85); s.chair(21.7, 8.85); s.chair(20.4, 10.5); s.chair(21.7, 10.5);
|
||||
s.room(23.5, 3, 4, 4.5, "ARMOURY");
|
||||
s.shelf(23.8, 5, 3.4, 0.6); s.text(23.8, 6.1, "arms rack");
|
||||
s.pencil(23.8, 7.1, "key: Controller", -2);
|
||||
s.room(23.5, 7.5, 4, 4, "WARDENS'", { sub: "post" });
|
||||
s.shelf(24, 10.2, 2.4, 0.5); s.text(24, 11.15, "truncheons");
|
||||
s.room(19, 11.5, 8.5, 3, MAIN, { cls: "rm2", ly: 1.9, lx: 0.4, entry: true });
|
||||
s.exit(27, 12.4, "r", "CONTROL, REGISTRY, SICK BAY · SHEETS 2–4 →", { tx: 19.2, ty: 15.05 });
|
||||
s.door(5, 8.6, true, 1); s.door(9, 8.6, true, 1);
|
||||
s.door(19, 4.3, true, 1, true); s.door(19, 8.9, true, 1, true);
|
||||
s.door(26.6, 7.5, false, 0.8, true); s.door(23.5, 8.5, true, 0.8, true); s.door(24.4, 11.5, false, 1);
|
||||
s.arch(19, 12, true, 2, "gap2");
|
||||
}},
|
||||
|
||||
{ key: "bh-control", no: 2, title: "CONTROL ROOM", level: "LEVEL 2 · GOVERNMENT", draw: s => {
|
||||
s.room(0.5, 1, 27, 2, "MAIN CORRIDOR", { cls: "rm2", ly: 1.25 });
|
||||
s.room(1, 4, 12, 9, "CONTROL ROOM", { n: 7, sub: "Controller's floor" });
|
||||
s.box(1.8, 5.5, 10.4, 0.9, "CONSOLE · DIALS · TANNOY DESK");
|
||||
for (let x = 2.5; x < 12; x += 1.4) s.chair(x, 6.6);
|
||||
s.box(3.5, 8, 6, 2.6, "SITUATION MAP · REGION 12", 20);
|
||||
for (const [x, y] of [[3.8, 7.4], [5.6, 7.4], [7.4, 7.4], [3.8, 10.8], [5.6, 10.8], [7.4, 10.8]]) s.chair(x, y);
|
||||
s.round(11.4, 11.4, 0.55, "SCOPE");
|
||||
s.pencil(9.8, 12.6, "SEALED 1974 — by order", -2);
|
||||
/* Level 1. Locations 7 and the Controller's floor. */
|
||||
{ key: "bh-control", no: 2, title: "CONTROL ROOM", level: "LEVEL 1 · GOVERNMENT", draw: s => {
|
||||
s.room(0.5, 1, 27, 3, MAIN, { cls: "rm2", ly: 1.3, lx: 11, entry: true });
|
||||
s.exit(1, 3.4, "l", "← LOBBY · SHEET 1", { ty: 0.6 });
|
||||
s.exit(27, 3.4, "r", "REGISTRY · SHEET 3 →", { ty: 0.6 });
|
||||
s.room(1, 4, 13, 9, "CONTROL ROOM", { n: 7, sub: "Controller's floor" });
|
||||
s.box(1.6, 5.6, 11.8, 0.9, "CONSOLE · DIALS · TANNOY DESK");
|
||||
for (let x = 2.4; x < 13; x += 1.4) s.chair(x, 6.65);
|
||||
s.box(3.5, 8.1, 6, 2.5, "SITUATION MAP · REGION 12", 20);
|
||||
for (const x of [3.9, 6.3, 8.7]) { s.chair(x, 7.5); s.chair(x, 10.8); }
|
||||
s.round(12.3, 11.5, 0.55, "SCOPE");
|
||||
s.pencil(9, 12.7, "SEALED 1974 — by order", -2);
|
||||
s.room(14, 4, 6, 5, "CONTROLLER", { sub: "E. Sowerby" });
|
||||
s.box(15.2, 5.8, 2.4, 1.1, "DESK"); s.chair(16.1, 7.1);
|
||||
s.shelf(19.1, 4.6, 0.7, 3.8); s.text(17.4, 8.7, "letters from Centre", "sub");
|
||||
s.box(15.2, 5.8, 2.4, 1.1, "DESK"); s.chair(16.2, 7.1);
|
||||
s.shelf(19.1, 4.3, 0.7, 3.6); s.text(17.3, 8.6, "files · Centre");
|
||||
s.room(14, 9, 6, 6, "STUDIO", { sub: "broadcast · 1962" });
|
||||
s.reels(14.6, 10.6, "TAPE DECK");
|
||||
s.safe(18.6, 10.2);
|
||||
s.box(15, 12.6, 2.6, 0.9, "MIXER"); s.chair(15.9, 13.7);
|
||||
s.round(18.8, 13.6, 0.3, "MIC");
|
||||
s.pencil(14.3, 14.7, "new tape rec'd from Centre 2019", -1);
|
||||
s.room(21, 4, 6, 5, "PIPE ROOM", { n: 11, sub: "Centre's in-tray" });
|
||||
s.round(24, 6.6, 0.55, "PIPE");
|
||||
s.box(21.5, 6.1, 1.8, 0.8, "IN-TRAY");
|
||||
s.pencil(21.4, 8.7, "every 90 days", -2);
|
||||
s.room(21, 9, 6, 6, "COMMS", { sub: "teleprinters · switchboard" });
|
||||
s.box(21.6, 10.8, 1.3, 1, "TP"); s.box(23.2, 10.8, 1.3, 1, "TP");
|
||||
s.box(21.6, 12.6, 4.8, 0.9, "SWITCHBOARD"); s.chair(22.3, 13.8); s.chair(24.3, 13.8);
|
||||
s.pencil(24.6, 10.6, "no line out", 4);
|
||||
s.door(3, 4, false, 1, true); s.door(16, 4, false, 1, true); s.door(23, 4, false, 1, true);
|
||||
s.door(14, 11, true, 1, true); s.door(14.8, 9, false, 1, true); s.door(23.5, 9, false, 1, true);
|
||||
s.reels(15.6, 10.7, "TAPE DECK");
|
||||
s.safe(18.9, 9.25);
|
||||
s.box(15.2, 12.6, 2.6, 0.9, "MIXER"); s.chair(16.3, 13.7);
|
||||
s.round(19.2, 13.7, 0.3, "MIC");
|
||||
s.pencil(14.3, 14.75, "new tape rec'd from Centre 2019", -1);
|
||||
s.room(20, 4, 7.5, 5, "SECRETARIAT", { sub: "minutes · rotas" });
|
||||
for (const x of [20.6, 22.8, 25]) { s.box(x, 6.1, 1.6, 0.8); s.chair(x + 0.6, 7.1); }
|
||||
s.shelf(20.4, 8.2, 3, 0.55);
|
||||
s.room(20, 9, 7.5, 6, "COMMS", { sub: "teleprinters · switchboard" });
|
||||
s.box(21, 10.9, 1.3, 1, "TP"); s.box(22.7, 10.9, 1.3, 1, "TP");
|
||||
s.box(20.6, 12.7, 5, 0.9, "SWITCHBOARD"); s.chair(21.6, 13.9); s.chair(23.6, 13.9);
|
||||
s.pencil(24.4, 11.3, "no line out", 4);
|
||||
s.door(2.2, 4, false, 1, true); s.door(14.8, 4, false, 1, true); s.door(25.8, 4, false, 1, true);
|
||||
s.door(14, 11.6, true, 1, true); s.door(14.4, 9, false, 0.9, true); s.door(26.1, 9, false, 1, true);
|
||||
}},
|
||||
|
||||
{ key: "bh-registry", no: 3, title: "REGISTRY", level: "LEVEL 2 · GOVERNMENT", draw: s => {
|
||||
s.room(0.5, 1, 27, 2, "MAIN CORRIDOR", { cls: "rm2", ly: 1.25 });
|
||||
/* Level 1. Location 8. The public side of the counter is the corridor side. */
|
||||
{ key: "bh-registry", no: 3, title: "REGISTRY", level: "LEVEL 1 · GOVERNMENT", draw: s => {
|
||||
s.room(0.5, 1, 27, 3, MAIN, { cls: "rm2", ly: 1.3, lx: 11, entry: true });
|
||||
s.exit(1, 3.4, "l", "← CONTROL ROOM · SHEET 2", { ty: 0.6 });
|
||||
s.exit(27, 3.4, "r", "SICK BAY · SHEET 4 →", { ty: 0.6 });
|
||||
s.room(1, 4, 9, 7, "PUBLIC COUNTER", { n: 8 });
|
||||
s.box(1, 7.4, 6.5, 0.7, "COUNTER");
|
||||
for (const x of [2, 3.5, 5, 6.5]) s.chair(x, 5.6);
|
||||
s.box(5.4, 4.3, 2, 0.45, "TAKE A NUMBER", 13);
|
||||
s.box(1, 7.4, 7.4, 0.7, "COUNTER");
|
||||
s.text(8.5, 7.9, "flap");
|
||||
for (const x of [1.6, 3, 4.4]) s.chair(x, 5.9);
|
||||
s.box(5.6, 5.9, 2, 0.45, "TAKE A NUMBER", 13);
|
||||
s.pencil(1.4, 10.6, "complaints: allow 11 weeks", -2);
|
||||
s.room(10, 4, 12, 11, "RECORDS");
|
||||
for (let x = 11; x < 21.5; x += 1.5) s.shelf(x, 5.6, 0.6, 7.6);
|
||||
s.text(10.4, 14.5, "BIRTHS · DEATHS · HOUSING · RATIONS · 1974–", "sub");
|
||||
s.room(22, 4, 5, 5, "REGISTRAR", { sub: "A. Pennyfeather" });
|
||||
s.box(23, 5.8, 2.2, 1, "DESK"); s.chair(23.8, 7.1);
|
||||
s.room(22, 9, 5, 6, "STRONGROOM", { sub: "standing orders" });
|
||||
s.safe(25.6, 9.9); s.shelf(22.5, 11.2, 3.8, 0.7); s.shelf(22.5, 13.3, 3.8, 0.7);
|
||||
s.text(10.4, 14.5, "BIRTHS · DEATHS · HOUSING · RATIONS · 1974–");
|
||||
s.room(22, 4, 5.5, 5, "REGISTRAR", { sub: "A. Pennyfeather" });
|
||||
s.box(23.2, 5.8, 2.2, 1, "DESK"); s.chair(24.1, 7.1);
|
||||
s.room(22, 9, 5.5, 6, "STRONGROOM", { sub: "standing orders" });
|
||||
s.safe(26.3, 10.1); s.shelf(22.5, 11.4, 3.5, 0.7); s.shelf(22.5, 13.4, 3.5, 0.7);
|
||||
s.room(1, 11, 9, 4, "TYPING POOL");
|
||||
for (const x of [1.8, 4.3, 6.8]) { s.box(x, 12.3, 1.8, 0.8); s.chair(x + 0.7, 13.4); }
|
||||
s.door(3.6, 4, false, 1, true); s.door(24, 4, false, 1, true);
|
||||
s.door(10, 5.2, true, 1, true); s.door(22, 6, true, 1, true); s.door(24.8, 9, false, 0.9, true);
|
||||
s.arch(8, 7.4, true, 0.7);
|
||||
s.door(4, 11, false, 1);
|
||||
for (const x of [1.4, 4.1, 6.8]) { s.box(x, 12.3, 1.8, 0.8); s.chair(x + 0.7, 13.4); }
|
||||
s.door(3.2, 4, false, 1, true); s.door(24.2, 4, false, 1, true);
|
||||
s.door(10, 9.3, true, 1, true); s.door(22, 8, true, 0.9, true); s.door(26.3, 9, false, 0.9, true);
|
||||
s.door(6.2, 11, false, 1, true);
|
||||
}},
|
||||
|
||||
{ key: "bh-sickbay", no: 4, title: "SICK BAY", level: "LEVEL 3 · WELFARE", draw: s => {
|
||||
s.room(0.5, 1, 27, 2, "WELFARE CORRIDOR", { cls: "rm2", ly: 1.25 });
|
||||
/* Level 1, the far end. Location 9, and the stair down to Level 2. */
|
||||
{ key: "bh-sickbay", no: 4, title: "SICK BAY", level: "LEVEL 1 · WELFARE", draw: s => {
|
||||
s.room(0.5, 1, 24, 3, MAIN, { cls: "rm2", ly: 1.3, lx: 11, entry: true });
|
||||
s.exit(1, 3.4, "l", "← REGISTRY · SHEET 3", { ty: 0.6 });
|
||||
s.stairs(24.5, 1, 3, 3, "DOWN");
|
||||
s.text(19.6, 0.6, "DOWN TO LEVEL 2 · SHEET 5");
|
||||
s.arch(24.5, 1.5, true, 2, "gap2");
|
||||
s.room(1, 4, 6, 5, "RECEPTION", { n: 9 });
|
||||
s.box(1.6, 5.7, 3, 0.7, "DESK");
|
||||
for (const x of [1.6, 2.6, 3.6, 4.6]) s.chair(x, 7.1);
|
||||
for (const x of [1.6, 2.6, 3.6, 4.6]) s.chair(x, 7.2);
|
||||
s.room(7, 4, 12, 6, "GENERAL WARD", { sub: "eighteen beds" });
|
||||
for (let x = 7.5; x < 17; x += 1.1) { s.bed(x, 5.2); s.bed(x, 7.9, true, 0.9, 1.9); }
|
||||
for (let x = 7.6; x < 17; x += 1.1) { s.bed(x, 5.3); s.bed(x, 7.9, true, 0.9, 1.9); }
|
||||
s.room(19, 4, 4, 3, "SIDE ROOM", { sub: "Mrs Marlow" });
|
||||
s.bed(21.8, 4.3, true, 0.9, 1.8); s.chair(21, 5.4); s.shelf(19.3, 6.2, 1.6, 0.5);
|
||||
s.room(23, 4, 4, 3, "DISPENSARY");
|
||||
s.shelf(23.3, 5.5, 3.4, 0.6);
|
||||
s.room(19, 7, 8, 3, "MEDICAL OFFICER", { sub: "Dr Larkhall" });
|
||||
s.box(23, 8.2, 2, 1, "DESK"); s.shelf(26.1, 7.3, 0.6, 2.4); s.chair(23.7, 9.3);
|
||||
s.bed(21.9, 4.2, true, 0.9, 1.8); s.chair(20.9, 5.4); s.shelf(19.3, 6.3, 1.4, 0.5);
|
||||
s.room(23, 4, 4.5, 3, "DISPENSARY");
|
||||
s.shelf(23.3, 5.1, 3.9, 0.55);
|
||||
s.room(19, 7, 8.5, 3, "MEDICAL OFFICER", { sub: "Dr Larkhall" });
|
||||
s.box(23.2, 8.2, 2, 1, "DESK"); s.shelf(26.6, 7.3, 0.6, 2.4); s.chair(23.9, 9.3);
|
||||
s.room(7, 10, 7, 5, "DELIVERY", { sub: "maternity" });
|
||||
s.bed(10, 11.8, false, 1, 2.2); s.round(12.9, 12.4, 0.35, "COT");
|
||||
s.pencil(7.4, 14.6, "Cotter — due Thurs", -2);
|
||||
s.room(14, 10, 6, 5, "THEATRE");
|
||||
s.box(15.8, 11.6, 2.4, 1, "TABLE"); s.round(18.9, 11, 0.4); s.shelf(14.3, 14, 3, 0.6);
|
||||
s.box(15.8, 11.6, 2.4, 1, "TABLE"); s.round(18.9, 11.2, 0.4); s.shelf(14.3, 14, 3, 0.6);
|
||||
s.room(1, 9, 6, 6, "ISOLATION");
|
||||
s.room(1, 11, 3, 4, null); s.room(4, 11, 3, 4, null);
|
||||
s.bed(1.8, 12.4); s.bed(4.8, 12.4);
|
||||
s.pencil(1.3, 10.6, "unused since '78", -1);
|
||||
s.door(3.5, 4, false, 1, true); s.door(24.5, 4, false, 1, true);
|
||||
s.bed(1.8, 12.6); s.bed(4.8, 12.6);
|
||||
s.pencil(4.4, 10.6, "unused since '78", -1);
|
||||
s.door(3.5, 4, false, 1, true); s.door(23.4, 4, false, 0.9, true);
|
||||
s.door(7, 6, true, 1, true); s.door(19, 5, true, 1, true); s.door(19, 8.2, true, 1, true);
|
||||
s.door(10, 10, false, 1); s.door(16.2, 10, false, 1);
|
||||
s.door(3.2, 9, false, 1, true); s.door(2.5, 11, false, 0.8); s.door(5.2, 11, false, 0.8);
|
||||
s.door(21.2, 7, false, 0.8, true);
|
||||
s.door(21.2, 7, false, 0.8, true); s.door(25.8, 7, false, 0.8, true);
|
||||
}},
|
||||
|
||||
{ key: "bh-creche", no: 5, title: "CRECHE & SCHOOL", level: "LEVEL 3 · WELFARE", draw: s => {
|
||||
s.room(0.5, 1, 27, 2, "WELFARE CORRIDOR", { cls: "rm2", ly: 1.25 });
|
||||
/* Level 2. Location 10, directly below the sick bay. */
|
||||
{ key: "bh-creche", no: 5, title: "CRECHE & SCHOOL", level: "LEVEL 2 · WELFARE", draw: s => {
|
||||
s.room(0.5, 1, 24, 3, LOWER, { cls: "rm2", ly: 1.3, lx: 9, entry: true });
|
||||
s.stairs(24.5, 1, 3, 3, "UP");
|
||||
s.text(20.6, 0.6, "UP TO LEVEL 1 · SHEET 4");
|
||||
s.arch(24.5, 1.5, true, 2, "gap2");
|
||||
s.exit(1, 3.4, "l", "← PIPE ROOM & PLANT · SHEET 6", { ty: 0.6 });
|
||||
s.room(1, 4, 5, 4, "CLOAKS");
|
||||
for (let y = 5.3; y < 7.8; y += 0.5) s.raw(`<circle cx="${p(1.3)}" cy="${p(y)}" r="7" fill="#e8f1fb"/>`);
|
||||
for (let y = 5.3; y < 7.8; y += 0.5) s.peg(1.3, y);
|
||||
s.room(1, 8, 5, 5, "STAFF", { sub: "K. Marlow" });
|
||||
s.bed(1.5, 10.2); s.box(3.4, 9.6, 1.8, 0.8, "DESK");
|
||||
s.room(6, 4, 10, 7, "SCHOOLROOM", { n: 10 });
|
||||
s.box(7, 5.2, 5, 0.25, "", 12); s.text(7, 5.9, "BLACKBOARD", "sub");
|
||||
s.box(7, 5.2, 5, 0.25); s.text(7, 5.9, "BLACKBOARD");
|
||||
s.box(12.8, 5.6, 2, 0.9, "TEACHER");
|
||||
for (let x = 7; x < 15; x += 2) for (let y = 6.9; y < 10; y += 1.2) { s.box(x, y, 1.3, 0.6); }
|
||||
for (let x = 7; x < 15; x += 2) for (let y = 6.9; y < 10; y += 1.2) s.box(x, y, 1.3, 0.6);
|
||||
s.pencil(12.4, 10.7, "atlas: 1971 edition", -2);
|
||||
s.room(16, 4, 11, 7, "PLAYROOM");
|
||||
s.raw(`<rect x="${p(16.2)}" y="${p(4.2)}" width="${p(10.6)}" height="16" fill="#e8f1fb" opacity=".5"/>`);
|
||||
s.text(16.3, 5.4, "pinned drawings along this wall", "sub");
|
||||
s.room(16, 4, 11.5, 7, "PLAYROOM");
|
||||
s.raw(`<rect x="${p(16.2)}" y="${p(4.2)}" width="${p(11.1)}" height="16" fill="#e8f1fb" opacity=".5"/>`);
|
||||
s.text(16.3, 5.4, "pinned drawings along this wall");
|
||||
s.box(18, 6.6, 4, 2.6, "RUG", 20);
|
||||
for (const [x, y] of [[23.5, 7], [25.4, 6.4], [24.6, 8.8], [17.2, 9.9]]) s.round(x, y, 0.35);
|
||||
s.box(25.3, 9.6, 1.4, 1.1, "TOYS", 16);
|
||||
s.box(25.6, 9.6, 1.4, 1.1, "TOYS", 16);
|
||||
s.room(6, 11, 14, 5, "DORMITORY", { sub: "under-twelves" });
|
||||
for (let x = 6.6; x < 19.5; x += 0.95) { s.bed(x, 12.3, true, 0.7, 1.3); s.bed(x, 14.3, true, 0.7, 1.3); }
|
||||
s.speaker(13, 11.35);
|
||||
s.pencil(13.8, 11.95, "speaker fitted 2019 — 03:00 nightly", -1);
|
||||
s.room(20, 11, 7, 5, "WASHROOM");
|
||||
for (let x = 21.8; x < 26.8; x += 1.2) s.round(x, 12.9, 0.3);
|
||||
s.box(21, 14, 5, 0.8, "BATHS");
|
||||
s.door(3, 4, false, 1, true); s.door(6, 5, true, 1); s.door(16, 6.4, true, 1);
|
||||
s.door(10.4, 11, false, 1); s.door(2.8, 8, false, 1); s.door(6, 11.6, true, 1, true);
|
||||
s.door(20, 13, true, 1);
|
||||
}, legend: [0.3, 16.1] },
|
||||
for (let x = 6.6; x < 19.5; x += 0.95) { s.bed(x, 12.4, true, 0.7, 1.3); s.bed(x, 14.4, true, 0.7, 1.3); }
|
||||
s.speaker(13.2, 11.4);
|
||||
s.pencil(14.2, 12.1, "speaker fitted 2019 — 03:00 nightly", -1);
|
||||
s.room(20, 11, 7.5, 5, "WASHROOM");
|
||||
for (let x = 22; x < 27; x += 1.2) s.round(x, 12.9, 0.3);
|
||||
s.box(21.4, 14.3, 5, 0.8, "BATHS");
|
||||
s.door(3.8, 4, false, 1, true); s.door(6, 5, true, 1); s.door(16, 6.4, true, 1);
|
||||
s.door(9.6, 11, false, 1); s.door(4, 8, false, 1); s.door(6, 11.6, true, 1, true);
|
||||
s.door(20, 12.6, true, 1);
|
||||
}},
|
||||
|
||||
{ key: "bh-vigil", no: 6, title: "VIGIL HALL & PLANT", level: "LEVEL 3 · ASSEMBLY", draw: s => {
|
||||
s.room(1, 1, 14, 13, "VIGIL HALL", { n: 13, ly: 12.5 });
|
||||
s.box(3, 1.5, 10, 1.8, "PLATFORM", 22);
|
||||
s.box(7.6, 3.4, 0.8, 0.5, "", 12); s.text(8.6, 3.9, "lectern", "sub");
|
||||
s.box(3.5, 1.1, 5, 0.3, "", 10);
|
||||
s.text(9, 1.35, "ROLL OF HONOUR", "sub");
|
||||
for (let y = 4.8; y < 11.5; y += 0.8) for (let x = 2; x < 12.8; x += 0.55) {
|
||||
if (x > 7.4 && x < 8.3) continue;
|
||||
s.raw(`<rect x="${p(x)}" y="${p(y)}" width="36" height="34" rx="5" class="fur"/>`);
|
||||
}
|
||||
s.speaker(1.5, 4.5); s.speaker(1.5, 10);
|
||||
s.pencil(9.6, 12.4, "999 seats — add one", -2);
|
||||
s.room(15, 1, 2, 18, null, { cls: "rm2" });
|
||||
s.text(15.3, 17.4, "CORR.", "sub");
|
||||
s.room(17, 1, 10, 9, "PLANT FLOOR", { n: 12 });
|
||||
s.box(17.8, 2.4, 3.4, 2.6, "COAL BOILER");
|
||||
s.box(22, 2.4, 2.2, 2, "GEN 1"); s.box(24.6, 2.4, 2.2, 2, "GEN 2");
|
||||
s.box(17.8, 6.2, 8.6, 0.6, "DUCTING");
|
||||
s.box(17.8, 7.6, 2.4, 1.6, "PUMPS"); s.box(21, 7.6, 2.4, 1.6, "FILTERS");
|
||||
s.pencil(23.6, 8.8, "coal from No.2 road", -2);
|
||||
s.room(17, 10, 10, 5.5, "TRANSMITTER", { sub: "feed to mast" });
|
||||
s.shelf(18, 11.8, 5, 0.9); s.text(18, 13.2, "valve racks", "sub");
|
||||
s.box(24, 11.6, 2.2, 1.4, "PANEL");
|
||||
s.raw(`<line x1="${p(26.5)}" y1="${p(12.3)}" x2="${p(26.5)}" y2="${p(10.3)}" class="arw" marker-end="url(#ah)"/>`);
|
||||
s.text(24.3, 15.1, "MAST CABLE ↑ MOOR", "sub");
|
||||
s.door(15, 5.5, true, 1); s.door(15, 11, true, 1);
|
||||
s.door(17, 4, true, 1, true); s.door(17, 12, true, 1, true);
|
||||
s.arrow(16, 18.8, 16, 19.9); s.arrow(16, 1.2, 16, 0.1);
|
||||
}, legend: [1, 15.6] },
|
||||
/* Level 2. Locations 11 and 12. The pneumatic pipe comes down from the moor into the pipe
|
||||
room; the incline goes down to the pit galleries from the plant floor's coal side. */
|
||||
{ key: "bh-plant", no: 6, title: "PIPE ROOM & PLANT", level: "LEVEL 2 · SERVICES", draw: s => {
|
||||
s.room(0.5, 1, 27, 3, LOWER, { cls: "rm2", ly: 1.3, lx: 11, entry: true });
|
||||
s.exit(27, 3.4, "r", "CRECHE · SHEET 5 →", { ty: 0.6 });
|
||||
s.room(1, 4, 7, 6, "PIPE ROOM", { n: 11, sub: "Centre's in-tray" });
|
||||
s.round(4.4, 6.9, 0.55, "PIPE");
|
||||
s.text(1.3, 8.2, "4\" pneumatic from moor ↑");
|
||||
s.box(5.8, 6.3, 1.6, 1.4, "IN-TRAY", 15);
|
||||
s.shelf(1.4, 9.1, 4, 0.5);
|
||||
s.pencil(4.4, 5.9, "every 90 days", -2);
|
||||
s.room(1, 10, 7, 5, "STORES", { sub: "issue counter" });
|
||||
s.box(1.3, 11.9, 4.4, 0.6, "COUNTER");
|
||||
s.shelf(1.4, 13.6, 6.2, 0.6); s.shelf(6.8, 10.5, 0.7, 2.6);
|
||||
s.room(8, 4, 19.5, 7, "PLANT FLOOR", { n: 12 });
|
||||
s.box(9, 5.6, 3.4, 2.6, "COAL BOILER");
|
||||
s.box(13.4, 5.6, 2.4, 2, "GEN 1"); s.box(16.4, 5.6, 2.4, 2, "GEN 2");
|
||||
s.box(19.6, 5.4, 6.8, 0.6, "DUCTING");
|
||||
s.box(20, 7.2, 2.4, 1.6, "PUMPS"); s.box(23.2, 7.2, 2.4, 1.6, "FILTERS");
|
||||
s.pencil(13.4, 9.3, "coal up from No.2 road", -2);
|
||||
s.stairs(8, 11, 3, 4, "INCLINE", {});
|
||||
s.text(8.2, 15.6, "↓ PIT GALLERIES · SHEET 7");
|
||||
s.room(11, 11, 5, 4, "COAL HOPPER");
|
||||
s.box(11.8, 12.4, 3.4, 2, "HOPPER");
|
||||
s.room(16, 11, 11.5, 4.5, "TRANSMITTER", { sub: "feed to mast" });
|
||||
s.shelf(17, 12.9, 5, 0.9); s.text(17, 14.3, "valve racks");
|
||||
s.box(23.6, 12.3, 2.2, 1.4, "PANEL");
|
||||
s.raw(`<line x1="${p(26.8)}" y1="${p(13.4)}" x2="${p(26.8)}" y2="${p(11.4)}" class="arw" marker-end="url(#ah)"/>`);
|
||||
s.text(22.3, 15.2, "MAST CABLE ↑ MOOR");
|
||||
s.door(3.4, 4, false, 1, true); s.door(10, 4, false, 1, true); s.door(21.5, 4, false, 1, true);
|
||||
s.door(8, 8.6, true, 1, true); s.door(4.2, 10, false, 1);
|
||||
s.arch(8.5, 11, false, 2); s.arch(11.5, 11, false, 3);
|
||||
s.door(20.2, 11, false, 1);
|
||||
}},
|
||||
|
||||
{ key: "bh-sump", no: 7, title: "TUNNELS & SUMP", level: "LEVEL 4 · WORKINGS", draw: s => {
|
||||
s.room(0.5, 1.5, 27, 3, "No.2 COAL ROAD", { cls: "rock", n: 14, sub: "growing beds under lamps" });
|
||||
for (let x = 6; x < 26; x += 2.4) s.shelf(x, 2.2, 2, 0.6);
|
||||
for (let x = 6; x < 26; x += 2.4) s.shelf(x, 3.7, 2, 0.6);
|
||||
s.pencil(20, 1.3, "workings beyond: not surveyed", -1);
|
||||
/* Pit galleries. Location 14 and the Buffer Depot, and location 15. Unlined coal roads;
|
||||
only the Sump and the depot were ever built out. */
|
||||
{ key: "bh-sump", no: 7, title: "COAL ROADS & SUMP", level: "PIT GALLERIES", draw: s => {
|
||||
s.stairs(0.5, 1.5, 3, 3, "INCLINE", { entry: true });
|
||||
s.text(0.3, 1.2, "↑ PLANT FLOOR · SHEET 6");
|
||||
s.room(3.5, 1.5, 24, 3, "No.2 COAL ROAD", { cls: "rock", n: 14, sub: "growing beds under lamps", lx: 0.2 });
|
||||
s.arch(3.5, 2, true, 2, "rgap");
|
||||
for (let x = 8.8; x < 26; x += 2.2) { s.shelf(x, 1.8, 1.9, 0.55, "beds"); s.shelf(x, 3.65, 1.9, 0.55, "beds"); }
|
||||
s.exit(27, 3, "r", "VIGIL HALL · SHEET 8 →", { ty: 1.2 });
|
||||
s.room(9, 4.5, 2, 3, null, { cls: "rock" }); s.room(17, 4.5, 2, 3, null, { cls: "rock" });
|
||||
s.room(11, 4.5, 6, 3, "BUFFER DEPOT", { sub: "tins · blankets · oil" });
|
||||
s.shelf(11.4, 6.4, 5.2, 0.5);
|
||||
s.pencil(1, 6.3, "workings west: not surveyed", -1);
|
||||
s.room(0.5, 7.5, 18.5, 3, "No.3 COAL ROAD", { cls: "rock", sub: "trout tanks" });
|
||||
for (let x = 6; x < 16.5; x += 2.8) s.box(x, 8.1, 2.3, 1.8, "TANK", 16);
|
||||
s.room(19, 6.5, 8.5, 5, "HEN RUN", { cls: "rock" });
|
||||
@@ -392,31 +491,158 @@ export const PLANS = [
|
||||
s.pencil(20.3, 8.6, "eggs → Welfare, Tues/Fri", -2);
|
||||
s.stairs(13, 10.5, 3, 4, "SUMP STAIR");
|
||||
s.room(1, 11.5, 12, 2, "THE SUMP", { n: 15, ly: 1.3 });
|
||||
for (const x of [1, 4, 7, 10]) s.room(x, 13.5, 3, 4.5, null);
|
||||
for (const [i, x] of [1, 4, 7, 10].entries()) {
|
||||
s.text(x + 0.3, 14.1, `CELL ${i + 1}`, "sub");
|
||||
s.bed(x + 0.5, 15.3);
|
||||
s.room(x, 13.5, 3, 4.5, `CELL ${i + 1}`, { lx: 0.2, ly: 0.9 });
|
||||
s.bed(x + 0.5, 15.4);
|
||||
s.door(x + 1.9, 13.5, false, 0.9);
|
||||
}
|
||||
s.box(8.8, 11.9, 2, 0.8, "WARDEN");
|
||||
s.pencil(1.3, 18.6, "locks: 1962 pattern — oil them", -1);
|
||||
s.box(8.8, 11.8, 2, 0.8, "WARDEN");
|
||||
s.pencil(1.3, 18.7, "locks: 1962 pattern — oil them", -1);
|
||||
s.arch(13.5, 10.5, false, 2, "rgap"); s.arch(13, 12, true, 1);
|
||||
s.arch(9, 4.5, false, 2, "rgap"); s.arch(9, 7.5, false, 2, "rgap");
|
||||
s.arch(17, 4.5, false, 2, "rgap"); s.arch(17, 7.5, false, 2, "rgap");
|
||||
s.door(19, 8.5, true, 1);
|
||||
s.arrow(1.3, 3, 0.1, 3);
|
||||
s.text(0.6, 1.2, "← to Welfare stair", "sub");
|
||||
}, legend: [17.5, 12.1] }
|
||||
s.door(11, 5.2, true, 1, true); s.door(19, 8.5, true, 1);
|
||||
}, legend: [17.5, 12.1] },
|
||||
|
||||
/* Pit galleries. Location 13: a hall lined out of a worked seam, for the whole Seat.
|
||||
999 people standing need about 5,000 sq ft; this is 7,800. */
|
||||
{ key: "bh-vigil", no: 8, title: "VIGIL HALL", level: "PIT GALLERIES", draw: s => {
|
||||
s.room(0.5, 7, 2, 4, null, { cls: "rock", entry: true });
|
||||
s.text(0.2, 6.6, "← SHEET 7");
|
||||
s.room(2.5, 1, 24.5, 14, "VIGIL HALL", { n: 13, ly: 13.6 });
|
||||
s.box(8, 1.4, 12, 1.9, "PLATFORM", 22);
|
||||
s.box(9, 1.05, 10, 0.22); s.text(20.3, 1.45, "ROLL OF HONOUR");
|
||||
s.box(13.6, 3.5, 0.8, 0.5); s.text(14.6, 3.95, "lectern");
|
||||
for (let y = 5; y < 10.5; y += 0.8) for (let x = 4.5; x < 23.8; x += 0.55) {
|
||||
if (x > 13.5 && x < 14.6) continue;
|
||||
s.chair(x, y);
|
||||
}
|
||||
for (const y of [4.6, 11.4]) s.speaker(2.9, y);
|
||||
for (const x of [18.5, 20.3, 22.1]) s.box(x, 12.2, 1.4, 1.4, "STACK", 14);
|
||||
s.pencil(6, 12.4, "Thursday: chairs out — all 999 stand", -2);
|
||||
s.text(15.6, 14.4, "standing room");
|
||||
s.door(2.5, 7.6, true, 1.8);
|
||||
s.door(27, 7.5, true, 1, true, { out: true });
|
||||
s.text(23.2, 7.2, "fire exit → galleries");
|
||||
}}
|
||||
];
|
||||
|
||||
/* The legend on sheet 7 sits above the title block; the title block never moves. */
|
||||
/* ---------------------------------------------------------------- the check */
|
||||
|
||||
const EPS = 0.02;
|
||||
const inside = (a, b, t = EPS) => a.x >= b.x - t && a.y >= b.y - t && a.x + a.w <= b.x + b.w + t && a.y + a.h <= b.y + b.h + t;
|
||||
const overlap = (a, b, t = EPS) => a.x < b.x + b.w - t && b.x < a.x + a.w - t && a.y < b.y + b.h - t && b.y < a.y + a.h - t;
|
||||
const holds = (r, x, y) => x > r.x && x < r.x + r.w && y > r.y && y < r.y + r.h;
|
||||
const area = r => r.w * r.h;
|
||||
const smallest = (rooms, x, y) => rooms.filter(r => holds(r, x, y)).sort((a, b) => area(a) - area(b))[0] ?? null;
|
||||
const onEdge = (r, d) => d.v
|
||||
? (Math.abs(r.x - d.x) < EPS || Math.abs(r.x + r.w - d.x) < EPS) && d.y >= r.y - EPS && d.y + d.len <= r.y + r.h + EPS
|
||||
: (Math.abs(r.y - d.y) < EPS || Math.abs(r.y + r.h - d.y) < EPS) && d.x >= r.x - EPS && d.x + d.len <= r.x + r.w + EPS;
|
||||
|
||||
export function checkPlan(plan) {
|
||||
const { s, legend } = build(plan);
|
||||
const { rooms, doors, items, labels } = s.geo;
|
||||
const out = [];
|
||||
const where = d => `${d.swing ? "door" : "opening"} at (${d.x},${d.y})`;
|
||||
const furniture = items.filter(i => i.kind !== "number");
|
||||
const reserved = [
|
||||
{ ...TITLE_BLOCK, name: "title block" },
|
||||
{ x: legend[0], y: legend[1], ...LEGEND, name: "key" }
|
||||
];
|
||||
|
||||
// Rooms: none crosses another; none sits on the key or title block.
|
||||
for (let i = 0; i < rooms.length; i++) {
|
||||
for (let j = i + 1; j < rooms.length; j++) {
|
||||
const a = rooms[i], b = rooms[j];
|
||||
if (overlap(a, b) && !inside(a, b) && !inside(b, a)) out.push(`rooms ${a.name} and ${b.name} overlap`);
|
||||
}
|
||||
for (const z of reserved) if (overlap(rooms[i], z)) out.push(`room ${rooms[i].name} runs under the ${z.name}`);
|
||||
}
|
||||
|
||||
// Doors: on a shared wall, between two different spaces, swinging into one of them clear.
|
||||
const edges = [];
|
||||
for (const d of doors) {
|
||||
const m = d.len / 2;
|
||||
const [ax, ay, bx, by] = d.v ? [d.x - 0.05, d.y + m, d.x + 0.05, d.y + m] : [d.x + m, d.y - 0.05, d.x + m, d.y + 0.05];
|
||||
const A = smallest(rooms, ax, ay), B = smallest(rooms, bx, by);
|
||||
if (d.out) {
|
||||
if (!A === !B) out.push(`${where(d)} is marked as leaving the building but has space on ${A && B ? "both sides" : "neither side"}`);
|
||||
if (!(A && onEdge(A, d)) && !(B && onEdge(B, d))) out.push(`${where(d)} is not on a wall`);
|
||||
continue;
|
||||
}
|
||||
if (!A || !B) { out.push(`${where(d)} opens onto solid rock (${A?.name ?? "nothing"} | ${B?.name ?? "nothing"})`); continue; }
|
||||
if (A === B) { out.push(`${where(d)} is not on a wall — ${A.name} on both sides`); continue; }
|
||||
if (!onEdge(A, d) && !onEdge(B, d)) out.push(`${where(d)} between ${A.name} and ${B.name} is not on either room's wall`);
|
||||
edges.push([A, B]);
|
||||
if (!d.swing) continue;
|
||||
const into = d.d < 0 ? A : B;
|
||||
const sw = d.v ? { x: d.d < 0 ? d.x - d.len : d.x, y: d.y, w: d.len, h: d.len }
|
||||
: { x: d.x, y: d.d < 0 ? d.y - d.len : d.y, w: d.len, h: d.len };
|
||||
if (!inside(sw, into)) out.push(`${where(d)} swings out of ${into.name}`);
|
||||
for (const i of furniture) if (overlap(sw, i)) out.push(`${where(d)} swings into ${i.kind} at (${i.x},${i.y}) in ${into.name}`);
|
||||
for (const l of labels) if (overlap(sw, l)) out.push(`${where(d)} swings across the lettering "${l.text}"`);
|
||||
for (const e of doors) if (e !== d && e.swing) {
|
||||
const sw2 = e.v ? { x: e.d < 0 ? e.x - e.len : e.x, y: e.y, w: e.len, h: e.len } : { x: e.x, y: e.d < 0 ? e.y - e.len : e.y, w: e.len, h: e.len };
|
||||
if (overlap(sw, sw2, 0.05) && (d.x < e.x || (d.x === e.x && d.y < e.y))) out.push(`${where(d)} and the door at (${e.x},${e.y}) swing into each other`);
|
||||
}
|
||||
}
|
||||
|
||||
// Furniture: wholly in one room, clear of other furniture and of lettering.
|
||||
for (const i of items) {
|
||||
const r = smallest(rooms, i.x + i.w / 2, i.y + i.h / 2);
|
||||
if (!r) { out.push(`${i.kind} at (${i.x},${i.y}) is outside every room`); continue; }
|
||||
if (!inside(i, r)) out.push(`${i.kind} at (${i.x},${i.y}) crosses the wall of ${r.name}`);
|
||||
const inner = rooms.find(q => q !== r && inside(q, r) && overlap(i, q));
|
||||
if (inner) out.push(`${i.kind} at (${i.x},${i.y}) in ${r.name} overlaps the room ${inner.name}`);
|
||||
}
|
||||
for (let a = 0; a < items.length; a++) for (let b = a + 1; b < items.length; b++) {
|
||||
const i = items[a], j = items[b];
|
||||
if (overlap(i, j)) out.push(`${i.kind} at (${i.x},${i.y}) overlaps ${j.kind} at (${j.x},${j.y})`);
|
||||
}
|
||||
for (const l of labels) {
|
||||
for (const i of furniture) if (overlap(l, i, 0.05)) out.push(`the lettering "${l.text}" runs over ${i.kind} at (${i.x},${i.y})`);
|
||||
for (const z of reserved) if (overlap(l, z)) out.push(`the lettering "${l.text}" runs under the ${z.name}`);
|
||||
if (l.x + l.w > W || l.x < 0) out.push(`the lettering "${l.text}" runs off the sheet`);
|
||||
if (!smallest(rooms, l.x + 0.05, l.y + l.h / 2)) {
|
||||
for (const q of rooms) if (overlap(l, q)) out.push(`the lettering "${l.text}" starts outside and runs into ${q.name}`);
|
||||
}
|
||||
const r = smallest(rooms, l.x + 0.05, l.y + l.h / 2);
|
||||
if (r && l.kind !== "pen" && l.x + l.w > r.x + r.w + EPS) out.push(`the lettering "${l.text}" runs out of ${r.name}`);
|
||||
}
|
||||
|
||||
// Every room is reachable from the way in.
|
||||
const start = rooms.filter(r => r.entry);
|
||||
if (!start.length) out.push("the sheet has no way in");
|
||||
const seen = new Set(start);
|
||||
const parent = r => rooms.filter(q => q !== r && inside(r, q)).sort((a, b) => area(a) - area(b))[0];
|
||||
let grew = true;
|
||||
while (grew) {
|
||||
grew = false;
|
||||
for (const [a, b] of edges) {
|
||||
if (seen.has(a) !== seen.has(b)) { seen.add(a); seen.add(b); grew = true; }
|
||||
}
|
||||
}
|
||||
for (const r of rooms) if (!seen.has(r)) out.push(`${r.name} cannot be reached from the way in`);
|
||||
return [...new Set(out)];
|
||||
}
|
||||
|
||||
if (import.meta.url === `file://${process.argv[1]}`) {
|
||||
const doRender = process.argv.includes("--render");
|
||||
const argv = process.argv.slice(2);
|
||||
if (argv.includes("--check")) {
|
||||
let bad = 0;
|
||||
for (const pl of PLANS) {
|
||||
const problems = checkPlan(pl);
|
||||
bad += problems.length;
|
||||
console.log(` sheet ${pl.no} ${pl.key}: ${problems.length ? problems.length + " problem(s)" : "OK"}`);
|
||||
problems.forEach(x => console.log(` - ${x}`));
|
||||
}
|
||||
if (PLANS.length !== SHEETS) { console.log(` ${PLANS.length} sheets drawn, ${SHEETS} numbered`); bad++; }
|
||||
process.exit(bad ? 1 : 0);
|
||||
}
|
||||
const doRender = argv.includes("--render");
|
||||
for (const pl of PLANS) {
|
||||
const svg = render(pl.no, pl.title, pl.level, pl.draw, pl.legend ? { legend: pl.legend } : {});
|
||||
const svgPath = path.join(OUT, `${pl.key}.svg`);
|
||||
writeFileSync(svgPath, svg);
|
||||
writeFileSync(svgPath, render(pl));
|
||||
if (doRender) {
|
||||
const png = path.join(OUT, `${pl.key}.png`);
|
||||
execFileSync("rsvg-convert", ["-w", "2800", "-h", "2000", svgPath, "-o", png]);
|
||||
|
||||
@@ -170,16 +170,17 @@ export const SO_PLATES = [
|
||||
{ name: "9 · Bellhouse — section", src: "art/maps/bellhouse-section.webp" }
|
||||
];
|
||||
|
||||
/* The underground as seven blueprint scenes, drawn by tools/bellhouse-plans.mjs. Numbers
|
||||
/* The underground as eight blueprint scenes, drawn by tools/bellhouse-plans.mjs. Numbers
|
||||
are the Locations table's. 2800x2000 at 100px to the square, like Culland Hall. */
|
||||
export const SO_SCENES = [
|
||||
{ key: "bh_lobby", name: "Bellhouse 1 · Lobby and Enquiries (6)", nav: "Lobby", src: "art/maps/bh-lobby.webp" },
|
||||
{ key: "bh_control", name: "Bellhouse 2 · Control Room and Pipe Room (7, 11)", nav: "Control", src: "art/maps/bh-control.webp" },
|
||||
{ key: "bh_registry", name: "Bellhouse 3 · Registry (8)", nav: "Registry", src: "art/maps/bh-registry.webp" },
|
||||
{ key: "bh_sickbay", name: "Bellhouse 4 · Sick Bay (9)", nav: "Sick Bay", src: "art/maps/bh-sickbay.webp" },
|
||||
{ key: "bh_creche", name: "Bellhouse 5 · Creche and School (10)", nav: "Creche", src: "art/maps/bh-creche.webp" },
|
||||
{ key: "bh_vigil", name: "Bellhouse 6 · Vigil Hall and Plant Floor (12, 13)", nav: "Vigil Hall", src: "art/maps/bh-vigil.webp" },
|
||||
{ key: "bh_sump", name: "Bellhouse 7 · Coal Roads and the Sump (14, 15)", nav: "Sump", src: "art/maps/bh-sump.webp" }
|
||||
{ key: "bh_lobby", name: "Bellhouse 1 · Lobby and Enquiries (6)", nav: "Lobby", src: "art/maps/bh-lobby.webp" },
|
||||
{ key: "bh_control", name: "Bellhouse 2 · Control Room and Studio (7)", nav: "Control", src: "art/maps/bh-control.webp" },
|
||||
{ key: "bh_registry", name: "Bellhouse 3 · Registry (8)", nav: "Registry", src: "art/maps/bh-registry.webp" },
|
||||
{ key: "bh_sickbay", name: "Bellhouse 4 · Sick Bay (9)", nav: "Sick Bay", src: "art/maps/bh-sickbay.webp" },
|
||||
{ key: "bh_creche", name: "Bellhouse 5 · Creche and School (10)", nav: "Creche", src: "art/maps/bh-creche.webp" },
|
||||
{ key: "bh_plant", name: "Bellhouse 6 · Pipe Room and Plant Floor (11, 12)", nav: "Plant", src: "art/maps/bh-plant.webp" },
|
||||
{ key: "bh_sump", name: "Bellhouse 7 · Coal Roads and the Sump (14, 15)", nav: "Sump", src: "art/maps/bh-sump.webp" },
|
||||
{ key: "bh_vigil", name: "Bellhouse 8 · Vigil Hall (13)", nav: "Vigil Hall", src: "art/maps/bh-vigil.webp" }
|
||||
];
|
||||
|
||||
/* The detention detail. Truncheons, not firearms: the Seat's armoury is locked and the
|
||||
|
||||