# Smart City Infrastructure A multi-system integration diagram showing interconnected city infrastructure (power, water, transport) connected through a central IoT platform with a citizen dashboard on top. Demonstrates hub-spoke layout, diverse physical shapes, and UI mockups. ## Key Patterns Used - **Hub-spoke layout**: Central IoT platform with radiating data connections to subsystems - **Connection dots**: Visual indicators where data lines attach to the central hub - **Dashboard/UI mockup**: Screen with mini-charts, gauges, and status indicators - **Multi-system integration**: Three independent systems unified by central platform - **Semantic line styles**: Different stroke styles for data (dashed), power, water, roads - **Physical infrastructure shapes**: Solar panels, wind turbines, dams, pipes, roads, vehicles ## New Shape Techniques ### Solar Panels (angled polygons with grid lines) ```xml ``` ### Wind Turbine (tower + nacelle + blades) ```xml ``` ### Battery with Charge Level ```xml 85% ``` ### Dam/Reservoir with Water Waves ```xml ``` ### Pipe Network with Joints and Valves ```xml ``` ### Road Intersection with Lane Markings ```xml ``` ### Traffic Light with Signal States ```xml ``` ### Bus with Windows and Wheels ```xml ``` ### Dashboard UI Mockup ```xml 78% ``` ### Hexagonal IoT Hub with Connection Points ```xml ``` ## CSS Classes for Infrastructure ```css /* Power system */ .solar-panel { fill: #3C3489; stroke: #534AB7; stroke-width: 0.5; } .solar-frame { fill: none; stroke: #EEEDFE; stroke-width: 0.5; } .wind-tower { fill: #B4B2A9; stroke: #5F5E5A; stroke-width: 1; } .wind-blade { fill: #F1EFE8; stroke: #888780; stroke-width: 0.5; } .battery { fill: #27500A; stroke: #3B6D11; stroke-width: 1.5; } .battery-level { fill: #97C459; } .power-line { stroke: #EF9F27; stroke-width: 2; fill: none; } /* Water system */ .reservoir-wall { fill: #B4B2A9; stroke: #5F5E5A; stroke-width: 1; } .water { fill: #85B7EB; stroke: #378ADD; stroke-width: 0.5; } .pipe { fill: none; stroke: #378ADD; stroke-width: 4; stroke-linecap: round; } .pipe-joint { fill: #185FA5; stroke: #0C447C; stroke-width: 1; } .valve { fill: #0C447C; stroke: #185FA5; stroke-width: 1; } /* Transport */ .road { stroke: #888780; stroke-width: 8; fill: none; stroke-linecap: round; } .road-mark { stroke: #F1EFE8; stroke-width: 1; fill: none; stroke-dasharray: 6 4; } .traffic-light { fill: #444441; stroke: #2C2C2A; stroke-width: 0.5; } .light-red { fill: #E24B4A; } .light-green { fill: #97C459; } .light-off { fill: #2C2C2A; } .bus { fill: #E1F5EE; stroke: #0F6E56; stroke-width: 1.5; } /* Data/IoT */ .data-line { stroke: #7F77DD; stroke-width: 2; fill: none; stroke-dasharray: 4 3; } .iot-hex { fill: #EEEDFE; stroke: #534AB7; stroke-width: 2; } /* Dashboard */ .dashboard { fill: #F1EFE8; stroke: #5F5E5A; stroke-width: 1.5; } .screen { fill: #1a1a18; } .screen-chart { fill: #5DCAA5; } ``` ## Layout Notes - **ViewBox**: 720×620 (wider for three-column system layout) - **Hub position**: Central IoT at (360, 270) - geometric center - **Data lines**: Use quadratic curves or L-shaped paths, add connection dots at hub attachment points - **System spacing**: ~200px width per system section - **Vertical layers**: Dashboard (top) → IoT Hub (middle) → Systems (bottom) - **Component grouping**: Use `` for each major component for easy positioning