Files
logo/vpn-logo-v5-radar.svg
2026-07-03 12:56:27 +08:00

80 lines
3.6 KiB
XML

<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512" width="512" height="512">
<defs>
<style>
.bg { fill: #ffffff; }
.ring { stroke: #4687F4; stroke-width: 4; fill: none; opacity: 0.5; }
.ring-bold { stroke: #4687F4; stroke-width: 5; fill: none; opacity: 0.8; }
.burst { stroke: #1E1E1E; stroke-width: 16; stroke-linecap: round; fill: none; }
.shield-fill { fill: #4687F4; }
.shield-cut { fill: #ffffff; }
.arc { stroke: #4687F4; stroke-width: 10; stroke-linecap: round; fill: none; }
.dot-blue { fill: #4687F4; }
.dot-dark { fill: #1E1E1E; }
.line-dark { stroke: #1E1E1E; stroke-width: 12; stroke-linecap: round; fill: none; }
</style>
</defs>
<rect class="bg" width="512" height="512" rx="64"/>
<!-- Concentric security rings (radar / perimeter defense) -->
<circle class="ring" cx="256" cy="256" r="100"/>
<circle class="ring" cx="256" cy="256" r="140"/>
<circle class="ring" cx="256" cy="256" r="180"/>
<circle class="ring-bold" cx="256" cy="256" r="220"/>
<!-- Scan line (rotating radar beam effect) -->
<path class="arc" d="M 256 256 L 130 130" opacity="0.4"/>
<!-- Burst rays (external threats / signal reach) -->
<line class="burst" x1="256" y1="256" x2="256" y2="48"/>
<line class="burst" x1="256" y1="256" x2="410" y2="86"/>
<line class="burst" x1="256" y1="256" x2="102" y2="86"/>
<line class="burst" x1="256" y1="256" x2="464" y2="256"/>
<line class="burst" x1="256" y1="256" x2="48" y2="256"/>
<!-- Central shield (protection core) -->
<path class="shield-fill" d="M 256 140
L 316 168
L 316 230
Q 316 274 256 296
Q 196 274 196 230
L 196 168 Z"/>
<!-- Keyhole cutout on shield -->
<circle class="shield-cut" cx="256" cy="210" r="8"/>
<rect class="shield-cut" x="250" y="217" width="12" height="18" rx="4"/>
<!-- VPN tunnel arcs from shield to outer nodes -->
<path class="arc" d="M 196 280 Q 130 340 110 410"/>
<path class="arc" d="M 316 280 Q 382 340 402 410"/>
<!-- Outer secure nodes -->
<circle class="dot-blue" cx="110" cy="410" r="20"/>
<circle class="dot-blue" cx="402" cy="410" r="20"/>
<!-- Device icons inside nodes (monitor silhouette) -->
<rect class="shield-cut" x="102" y="404" width="16" height="12" rx="2"/>
<line class="shield-cut" x1="110" y1="418" x2="110" y2="424" stroke="#ffffff" stroke-width="3" stroke-linecap="round"/>
<rect class="shield-cut" x="394" y="404" width="16" height="12" rx="2"/>
<line class="shield-cut" x1="402" y1="418" x2="402" y2="424" stroke="#ffffff" stroke-width="3" stroke-linecap="round"/>
<!-- Top server node -->
<circle class="dot-dark" cx="256" cy="72" r="14"/>
<!-- Server rack lines -->
<line class="shield-cut" x1="248" y1="68" x2="264" y2="68" stroke="#ffffff" stroke-width="2" stroke-linecap="round"/>
<line class="shield-cut" x1="248" y1="72" x2="264" y2="72" stroke="#ffffff" stroke-width="2" stroke-linecap="round"/>
<line class="shield-cut" x1="248" y1="76" x2="264" y2="76" stroke="#ffffff" stroke-width="2" stroke-linecap="round"/>
<!-- Connection from top server to shield -->
<line class="line-dark" x1="256" y1="86" x2="256" y2="136"/>
<!-- Perimeter dots at ring intersections -->
<circle class="dot-blue" cx="256" cy="36" r="5" opacity="0.6"/>
<circle class="dot-blue" cx="356" cy="76" r="5" opacity="0.6"/>
<circle class="dot-blue" cx="426" cy="176" r="5" opacity="0.6"/>
<circle class="dot-blue" cx="476" cy="256" r="5" opacity="0.6"/>
<circle class="dot-blue" cx="86" cy="176" r="5" opacity="0.6"/>
<circle class="dot-blue" cx="36" cy="256" r="5" opacity="0.6"/>
</svg>