aboutsummaryrefslogtreecommitdiff
path: root/working/weather-kit-integration/weather-glyphs.svg
blob: 0cc31893ffb2f56b62839ec4b02a8043e6dda043 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
<?xml version="1.0" encoding="UTF-8"?>
<!-- weather-glyphs.svg — custom weather condition glyph set for the Dupre kit.
     Drawn custom (not Nerd Font / emoji) so they sit in the instrument aesthetic.
     Every symbol uses currentColor, so a consumer recolours by setting `color`
     on the <svg>/<use> that references it. 24x24 viewBox throughout.

     Condition ids match the `condition` field of the `weather` CLI:
       clear -> wx-sun   partly -> wx-partly   cloud -> wx-cloud
       fog   -> wx-fog   rain   -> wx-rain     snow  -> wx-snow   storm -> wx-storm
     Plus two wind marks used by the chip's collapse rule:
       wx-wind  — the "windy" gust glyph (shown when wind_mph >= threshold)
       wx-vane  — the direction arrow (shown below threshold; rotate by wind_deg,
                  0deg = points north, so the CSS transform is rotate(<wind_deg>deg))

     Usage:
       <svg width="24" height="24" style="color:#ffbe54"><use href="#wx-sun"/></svg>
-->
<svg xmlns="http://www.w3.org/2000/svg" width="0" height="0" style="position:absolute" aria-hidden="true"><defs>

  <symbol id="wx-sun" viewBox="0 0 24 24">
    <circle cx="12" cy="12" r="4.3" fill="currentColor"/>
    <g stroke="currentColor" stroke-width="1.8" stroke-linecap="round">
      <line x1="12" y1="1.5" x2="12" y2="4.6"/><line x1="12" y1="19.4" x2="12" y2="22.5"/>
      <line x1="1.5" y1="12" x2="4.6" y2="12"/><line x1="19.4" y1="12" x2="22.5" y2="12"/>
      <line x1="4.6" y1="4.6" x2="6.8" y2="6.8"/><line x1="17.2" y1="17.2" x2="19.4" y2="19.4"/>
      <line x1="4.6" y1="19.4" x2="6.8" y2="17.2"/><line x1="17.2" y1="6.8" x2="19.4" y2="4.6"/>
    </g>
  </symbol>

  <symbol id="wx-partly" viewBox="0 0 24 24">
    <circle cx="8.5" cy="8" r="3.2" fill="currentColor"/>
    <g stroke="currentColor" stroke-width="1.5" stroke-linecap="round">
      <line x1="8.5" y1="1.5" x2="8.5" y2="3.4"/><line x1="1.7" y1="8" x2="3.6" y2="8"/>
      <line x1="3.7" y1="3.2" x2="5" y2="4.5"/><line x1="13.3" y1="3.2" x2="12" y2="4.5"/>
    </g>
    <g fill="currentColor"><circle cx="12" cy="15" r="3.6"/><circle cx="16.5" cy="13" r="4.4"/><circle cx="20" cy="15.6" r="3.1"/><rect x="11" y="15" width="10" height="4" rx="2"/></g>
  </symbol>

  <symbol id="wx-cloud" viewBox="0 0 24 24">
    <g fill="currentColor"><circle cx="7.5" cy="13" r="4"/><circle cx="12.5" cy="10.5" r="5.2"/><circle cx="17" cy="13.5" r="3.6"/><rect x="6.5" y="13" width="11.5" height="4.2" rx="2.1"/></g>
  </symbol>

  <symbol id="wx-rain" viewBox="0 0 24 24">
    <g fill="currentColor"><circle cx="7.5" cy="9" r="3.6"/><circle cx="12.5" cy="7" r="4.6"/><circle cx="16.5" cy="9.6" r="3.1"/><rect x="6.5" y="9" width="10.5" height="3.8" rx="1.9"/></g>
    <g stroke="currentColor" stroke-width="1.8" stroke-linecap="round"><line x1="8" y1="15.5" x2="6.6" y2="19.5"/><line x1="12" y1="15.5" x2="10.6" y2="19.5"/><line x1="16" y1="15.5" x2="14.6" y2="19.5"/></g>
  </symbol>

  <symbol id="wx-storm" viewBox="0 0 24 24">
    <g fill="currentColor"><circle cx="7.5" cy="9" r="3.6"/><circle cx="12.5" cy="7" r="4.6"/><circle cx="16.5" cy="9.6" r="3.1"/><rect x="6.5" y="9" width="10.5" height="3.8" rx="1.9"/></g>
    <path d="M12.5 14 L9 19.5 h3 L10.5 23.5 L15.5 17.5 h-3 L14 14 Z" fill="currentColor"/>
  </symbol>

  <symbol id="wx-snow" viewBox="0 0 24 24">
    <g fill="currentColor"><circle cx="7.5" cy="9" r="3.6"/><circle cx="12.5" cy="7" r="4.6"/><circle cx="16.5" cy="9.6" r="3.1"/><rect x="6.5" y="9" width="10.5" height="3.8" rx="1.9"/></g>
    <g stroke="currentColor" stroke-width="1.5" stroke-linecap="round">
      <g transform="translate(9,17.5)"><line x1="-2" y1="0" x2="2" y2="0"/><line x1="0" y1="-2" x2="0" y2="2"/><line x1="-1.4" y1="-1.4" x2="1.4" y2="1.4"/><line x1="-1.4" y1="1.4" x2="1.4" y2="-1.4"/></g>
      <g transform="translate(15,18.5)"><line x1="-2" y1="0" x2="2" y2="0"/><line x1="0" y1="-2" x2="0" y2="2"/><line x1="-1.4" y1="-1.4" x2="1.4" y2="1.4"/><line x1="-1.4" y1="1.4" x2="1.4" y2="-1.4"/></g>
    </g>
  </symbol>

  <symbol id="wx-fog" viewBox="0 0 24 24">
    <g stroke="currentColor" stroke-width="1.9" stroke-linecap="round">
      <line x1="3" y1="7" x2="21" y2="7"/><line x1="5" y1="11.5" x2="19" y2="11.5"/><line x1="3" y1="16" x2="18" y2="16"/><line x1="7" y1="20.5" x2="21" y2="20.5"/>
    </g>
  </symbol>

  <!-- windy condition: flowing gust lines, each ending in a curl -->
  <symbol id="wx-wind" viewBox="0 0 24 24">
    <g fill="none" stroke="currentColor" stroke-width="1.9" stroke-linecap="round">
      <path d="M2.5 8 H13.5 a2.6 2.6 0 1 0 -2.55 -3.1"/>
      <path d="M2.5 12.5 H18 a2.9 2.9 0 1 1 -2.85 3.45"/>
      <path d="M2.5 17 H10.5 a2.3 2.3 0 1 1 -2.25 2.75"/>
    </g>
  </symbol>

  <!-- direction vane: points UP = north at 0deg; rotate by wind_deg (source bearing) -->
  <symbol id="wx-vane" viewBox="0 0 24 24">
    <path d="M12 2.4 L15.6 9 L12.9 9 L12.9 21 L11.1 21 L11.1 9 L8.4 9 Z" fill="currentColor" stroke="currentColor" stroke-width=".8" stroke-linejoin="round"/>
  </symbol>

</defs></svg>