BogaudioModules

BogaudioModules for VCV Rack
Log | Files | Refs | README | LICENSE

FourFO-pp.svg (27347B)


      1 <?xml version="1.0"?>
      2 <svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" version="1.1" width="150.0" height="380.0" viewBox="0 0 150.0 380.0">
      3   <style>text {
      4   fill: #333;
      5   font-family: 'Roboto', sans-serif;
      6   font-weight: bold;
      7 }
      8 text.title {
      9   font-family: 'Comfortaa', sans-serif;
     10   font-weight: normal;
     11 }
     12 text.brand {
     13   font-family: 'Audiowide', sans-serif;
     14   font-weight: bold;
     15 }
     16 
     17 polyline {
     18   stroke: #333;
     19 }
     20 polyline.guide {
     21   stroke: #0f0;
     22 }
     23 path {
     24   stroke: #333;
     25 }
     26 
     27 rect.module-background, .background-fill {
     28   fill: #ddd;
     29 }
     30 polyline.module-border-inner {
     31   stroke: #e4e4e4;
     32 }
     33 polyline.module-border-middle {
     34   stroke: #ebebeb;
     35 }
     36 polyline.module-border-outer {
     37   stroke: #f2f2f2;
     38 }
     39 
     40 g.io-group {
     41 }
     42 rect.input-background, rect.input-background-filler {
     43   fill: #fafafa;
     44 }
     45 rect.output-background, rect.output-background-filler {
     46   fill: #bbb;
     47 }
     48 text.input-label, text.output-label {
     49   /* font-size: 6pt; */
     50 }
     51 polyline.input-label, polyline.output-label {
     52 }
     53 path.input-label, path.output-label {
     54 }
     55 
     56 circle.port-rim {
     57   stroke: #f0f0f0;
     58 }
     59 circle.port-barrel {
     60   stroke: #222;
     61   fill: #222;
     62 }
     63 circle.knob-center {
     64    fill: #eee;
     65 }
     66 circle.knob-rim {
     67    fill: #333;
     68 }
     69 circle.knob-tick {
     70   fill: #fff;
     71 }
     72 polyline.knob-tick {
     73   stroke: #fff;
     74 }
     75 </style>
     76 
     77   <defs>
     78     <symbol id="dial-frequency-fourfo" viewBox="0 0 92px 92px">
     79       <g transform="translate(46 46)">
     80         <g transform="rotate(-225.08) translate(19 0)">
     81           <polyline points="0,0 5,0" stroke-width="1" transform="translate(3 0)"/>
     82           <text font-size="6pt" transform="translate(12 0) rotate(225.08) translate(-10.5 3.5)">0.1</text>
     83         </g>
     84         <g transform="rotate(-171.49) translate(19 0)">
     85           <polyline points="0,0 5,0" stroke-width="1" transform="translate(3 0)"/>
     86           <text font-size="6pt" transform="translate(12 0) rotate(171.49) translate(-9 3.5)">0.5</text>
     87         </g>
     88         <g transform="rotate(-124.62) translate(19 0)">
     89           <polyline points="0,0 5,0" stroke-width="1" transform="translate(3 0)"/>
     90           <text font-size="6pt" letter-spacing="1px" transform="translate(12 0) rotate(124.62) translate(-9 2.5)">0V</text>
     91         </g>
     92         <g transform="rotate(-71.76) translate(19 0)">
     93           <polyline points="0,0 5,0" stroke-width="1" transform="translate(3 0)"/>
     94           <text font-size="6pt" transform="translate(12 0) rotate(71.76) translate(-2 2.5)">10</text>
     95         </g>
     96         <g transform="rotate(-18.17) translate(19 0)">
     97           <polyline points="0,0 5,0" stroke-width="1" transform="translate(3 0)"/>
     98           <text font-size="6pt" transform="translate(12 0) rotate(18.17) translate(-2 3.5)">50</text>
     99         </g>
    100         <g transform="rotate(27.98) translate(19 0)">
    101           <polyline points="0,0 5,0" stroke-width="1" transform="translate(3 0)"/>
    102           <text font-size="6pt" transform="translate(12 0) rotate(-27.98) translate(-2 1.5)">200</text>
    103         </g>
    104         <g transform="rotate(51.05) translate(19 0)">
    105           <polyline points="0,0 5,0" stroke-width="1" transform="translate(3 0)"/>
    106           <text font-size="6pt" transform="translate(12 0) rotate(-51.05) translate(-2 3.5)">400</text>
    107         </g>
    108 
    109         <polyline points="0,0 3,0" stroke-width="0.7" transform="rotate(-240) translate(22 0)"/>
    110         <polyline points="0,0 3,0" stroke-width="0.7" transform="rotate(-216.92) translate(22 0)"/>
    111 
    112         <polyline points="0,0 3,0" stroke-width="0.7" transform="rotate(-193.85) translate(22 0)"/>
    113         
    114 
    115         <polyline points="0,0 3,0" stroke-width="0.7" transform="rotate(-147.69) translate(22 0)"/>
    116         
    117 
    118         <polyline points="0,0 3,0" stroke-width="0.7" transform="rotate(-101.54) translate(22 0)"/>
    119         <polyline points="0,0 3,0" stroke-width="0.7" transform="rotate(-78.46) translate(22 0)"/>
    120 
    121         <polyline points="0,0 3,0" stroke-width="0.7" transform="rotate(-55.38) translate(22 0)"/>
    122         <polyline points="0,0 3,0" stroke-width="0.7" transform="rotate(-32.31) translate(22 0)"/>
    123 
    124         <polyline points="0,0 3,0" stroke-width="0.7" transform="rotate(-9.23) translate(22 0)"/>
    125         <polyline points="0,0 3,0" stroke-width="0.7" transform="rotate(13.85) translate(22 0)"/>
    126 
    127         <polyline points="0,0 3,0" stroke-width="0.7" transform="rotate(36.92) translate(22 0)"/>
    128         <polyline points="0,0 3,0" stroke-width="0.7" transform="rotate(60) translate(22 0)"/>
    129       </g>
    130     </symbol>
    131   </defs>
    132 
    133   
    134       
    135       <rect class="module-background background-fill" width="150.0" height="380.0"/>
    136     
    137       
    138       <polyline class="module-border-inner" points="1,1 149.0,1 149.0,379.0 1,379.0 1,1" stroke-width="0.5" fill="none"/>
    139       <polyline class="module-border-middle" points="0.5,0.5 149.5,0.5 149.5,379.5 0.5,379.5 0.5,0.5" stroke-width="0.8" fill="none"/>
    140       <polyline class="module-border-outer" points="0,0 150.0,0 150.0,380.0 0,380.0 0,0" stroke-width="1" fill="none"/>
    141     
    142       <text class="title" font-size="12pt" letter-spacing="4px" text-anchor="middle" transform="translate(75.0 19)">4FO</text>
    143       <g transform="translate(0 374)">
    144         <text class="brand" font-size="8pt" letter-spacing="2px" text-anchor="middle" transform="translate(75.0 0)">BOGAUDIO</text>
    145         <rect class="background-fill" width="3" height="3" transform="translate(59.5 -5)"/>
    146       </g>
    147     
    148 
    149   <g transform="translate(6 25)">
    150     
    151     <g transform="translate(17 17)"><svg id="FREQUENCY_PARAM">
    152       <g transform="translate(19 19)">
    153         <polyline points="-5,0 5,0" stroke-width="1" stroke="#00f"/>
    154         <polyline points="0,-5 0,5" stroke-width="1" stroke="#00f"/>
    155         <circle cx="0" cy="0" r="18.5" stroke-width="1" stroke="#00f" fill="none"/>
    156       </g>
    157     </svg></g>
    158     <use xlink:href="#dial-frequency-fourfo" transform="translate(-10 -10)" href="#dial-frequency-fourfo"/>
    159     <text font-size="6pt" letter-spacing="1px" text-anchor="middle" transform="translate(36 75)">0V = 2.04HZ</text>
    160   </g>
    161 
    162   <g transform="translate(95 48)">
    163     
    164     
    165     
    166     
    167     <g transform="translate(0 5)"><svg id="WAVE_PARAM">
    168       <g transform="translate(8 8)">
    169         <polyline points="-3,0 3,0" stroke-width="1" stroke="#00f"/>
    170         <polyline points="0,-3 0,3" stroke-width="1" stroke="#00f"/>
    171         <circle r="7.5" stroke-width="1" stroke="#00f" fill="none"/>
    172       </g>
    173     </svg></g>
    174     <g transform="translate(-12 -22)">
    175       
    176       <g transform="translate(20 35)">
    177         
    178         <polyline points="0,0 5,0" stroke-width="1" transform="rotate(-90) translate(11 0)"/>
    179         <polyline points="0,0 5,0" stroke-width="1" transform="rotate(-54) translate(11 0)"/>
    180         <polyline points="0,0 5,0" stroke-width="1" transform="rotate(-18) translate(11 0)"/>
    181         <polyline points="0,0 5,0" stroke-width="1" transform="rotate(18) translate(11 0)"/>
    182         <polyline points="0,0 5,0" stroke-width="1" transform="rotate(54) translate(11 0)"/>
    183         <polyline points="0,0 5,0" stroke-width="1" transform="rotate(90) translate(11 0)"/>
    184       </g>
    185       <g transform="translate(13 8)">
    186         
    187         <polyline points="0,8 12,0 12,8" stroke-width="1" fill="none"/>
    188       </g>
    189       <g transform="translate(30 11)">
    190         
    191         <polyline points="0,8 0,0 12,8" stroke-width="1" fill="none"/>
    192       </g>
    193       <g transform="translate(38 24)">
    194         
    195         <path d="M 0 4 A 2 3 0 0 1 6 4" stroke-width="1" stroke="#333" fill="none"/>
    196         <path d="M 6 4 A 2 3 0 0 0 12 4" stroke-width="1" stroke="#333" fill="none"/>
    197       </g>
    198       <g transform="translate(38 38)">
    199         
    200         <polyline points="0,4 3,0 9,8 12,4" stroke-width="1" fill="none"/>
    201       </g>
    202       <g transform="translate(30 51)">
    203         
    204         <polyline points="0,4 0,0 6,0 6,8 12,8 12,4" stroke-width="1" fill="none"/>
    205       </g>
    206       <g transform="translate(13 54)">
    207         
    208         <polyline points="0,0 0,5 12,5 12,8" stroke-width="1" fill="none"/>
    209       </g>
    210     </g>
    211   </g>
    212 
    213   <g transform="translate(9 110)">
    214     <text font-size="6pt" letter-spacing="2px" transform="translate(9 6.1)">SLOW</text>
    215     <g transform="translate(40 -1.3)"><svg id="SLOW_PARAM">
    216       <g transform="translate(4.5 4.5)">
    217         <circle r="4" stroke-width="1" stroke="#00f" fill="#f00"/>
    218       </g>
    219     </svg></g>
    220   </g>
    221 
    222   <g transform="translate(6 133)">
    223     
    224     <g transform="translate(0 0)">
    225       
    226       <text font-size="7pt" letter-spacing="1px" text-anchor="middle" transform="translate(15 4)">S/PW</text>
    227       <g transform="translate(7 16)"><svg id="SAMPLE_PWM_PARAM">
    228       <g transform="translate(8 8)">
    229         <polyline points="-3,0 3,0" stroke-width="1" stroke="#00f"/>
    230         <polyline points="0,-3 0,3" stroke-width="1" stroke="#00f"/>
    231         <circle r="7.5" stroke-width="1" stroke="#00f" fill="none"/>
    232       </g>
    233     </svg></g>
    234       <g transform="translate(-5 4)">
    235       <g transform="translate(20 20)">
    236         <polyline points="0,0 4,0" stroke-width="1" transform="rotate(-90) translate(10 0)"/>
    237         <path d="M 0 -12.5 A 12.5 12.5 0 0 1 12.5 0" stroke-width="0.7" stroke-linecap="round" stroke="#333" fill="none" transform="rotate(20)"/>
    238         <path d="M 0 -12.5 A 12.5 12.5 0 0 1 12.5 0" stroke-width="0.7" stroke-linecap="round" stroke="#333" fill="none" transform="rotate(43)"/>
    239         <path d="M 0 -12.5 A 12.5 12.5 0 0 0 -12.5 0" stroke-width="0.7" stroke-linecap="round" stroke="#333" fill="none" transform="rotate(-20)"/>
    240         <path d="M 0 -12.5 A 12.5 12.5 0 0 0 -12.5 0" stroke-width="0.7" stroke-linecap="round" stroke="#333" fill="none" transform="rotate(-43)"/>
    241       </g>
    242     </g>
    243     </g>
    244     <g transform="translate(35 0)">
    245       
    246       <text font-size="7pt" letter-spacing="1px" text-anchor="middle" transform="translate(15 4)">SMTH</text>
    247       <g transform="translate(7 16)"><svg id="SMOOTH_PARAM">
    248       <g transform="translate(8 8)">
    249         <polyline points="-3,0 3,0" stroke-width="1" stroke="#00f"/>
    250         <polyline points="0,-3 0,3" stroke-width="1" stroke="#00f"/>
    251         <circle r="7.5" stroke-width="1" stroke="#00f" fill="none"/>
    252       </g>
    253     </svg></g>
    254       <g transform="translate(-5 4)">
    255       <g transform="translate(20 20)">
    256       <polyline points="0,0 4.166666666666667,0" stroke-width="1" transform="rotate(-240) translate(10.0 0)"/>
    257       <path class="0.0" d="M 0 -12.5 A 12.5 12.5 0 0 1 12.5 0" stroke-width="0.7" stroke-linecap="round" stroke="#333" fill="none" transform="rotate(0)"/>
    258       <path class="0.0" d="M 0 -12.5 A 12.5 12.5 0 0 1 12.5 0" stroke-width="0.7" stroke-linecap="round" stroke="#333" fill="none" transform="rotate(43)"/>
    259       <path class="0.0" d="M 0 -12.5 A 12.5 12.5 0 0 0 -12.5 0" stroke-width="0.7" stroke-linecap="round" stroke="#333" fill="none" transform="rotate(0)"/>
    260       <path class="0.0" d="M 0 -12.5 A 12.5 12.5 0 0 0 -12.5 0" stroke-width="0.7" stroke-linecap="round" stroke="#333" fill="none" transform="rotate(-43)"/>
    261       <polyline points="-3,0 3,0" stroke-width="1" fill="none"/>
    262       <polyline points="0,-3 0,3" stroke-width="1" fill="none"/>
    263     </g>
    264     </g>
    265     </g>
    266     <g transform="translate(0 49)">
    267       
    268       <text font-size="7pt" letter-spacing="2px" text-anchor="middle" transform="translate(15 4)">OFF</text>
    269       <g transform="translate(7 16)"><svg id="OFFSET_PARAM">
    270       <g transform="translate(8 8)">
    271         <polyline points="-3,0 3,0" stroke-width="1" stroke="#00f"/>
    272         <polyline points="0,-3 0,3" stroke-width="1" stroke="#00f"/>
    273         <circle r="7.5" stroke-width="1" stroke="#00f" fill="none"/>
    274       </g>
    275     </svg></g>
    276       <g transform="translate(-5 4)">
    277       <g transform="translate(20 20)">
    278         <polyline points="0,0 4,0" stroke-width="1" transform="rotate(-90) translate(10 0)"/>
    279         <path d="M 0 -12.5 A 12.5 12.5 0 0 1 12.5 0" stroke-width="0.7" stroke-linecap="round" stroke="#333" fill="none" transform="rotate(20)"/>
    280         <path d="M 0 -12.5 A 12.5 12.5 0 0 1 12.5 0" stroke-width="0.7" stroke-linecap="round" stroke="#333" fill="none" transform="rotate(43)"/>
    281         <path d="M 0 -12.5 A 12.5 12.5 0 0 0 -12.5 0" stroke-width="0.7" stroke-linecap="round" stroke="#333" fill="none" transform="rotate(-20)"/>
    282         <path d="M 0 -12.5 A 12.5 12.5 0 0 0 -12.5 0" stroke-width="0.7" stroke-linecap="round" stroke="#333" fill="none" transform="rotate(-43)"/>
    283       </g>
    284     </g>
    285     </g>
    286     <g transform="translate(35 49)">
    287       
    288       <text font-size="7pt" letter-spacing="2px" text-anchor="middle" transform="translate(15 4)">SCL</text>
    289       <g transform="translate(7 16)"><svg id="SCALE_PARAM">
    290       <g transform="translate(8 8)">
    291         <polyline points="-3,0 3,0" stroke-width="1" stroke="#00f"/>
    292         <polyline points="0,-3 0,3" stroke-width="1" stroke="#00f"/>
    293         <circle r="7.5" stroke-width="1" stroke="#00f" fill="none"/>
    294       </g>
    295     </svg></g>
    296       <g transform="translate(-5 4)">
    297       <g transform="translate(20 20)">
    298       <polyline points="0,0 4.166666666666667,0" stroke-width="1" transform="rotate(-240) translate(10.0 0)"/>
    299       <path class="0.0" d="M 0 -12.5 A 12.5 12.5 0 0 1 12.5 0" stroke-width="0.7" stroke-linecap="round" stroke="#333" fill="none" transform="rotate(0)"/>
    300       <path class="0.0" d="M 0 -12.5 A 12.5 12.5 0 0 1 12.5 0" stroke-width="0.7" stroke-linecap="round" stroke="#333" fill="none" transform="rotate(43)"/>
    301       <path class="0.0" d="M 0 -12.5 A 12.5 12.5 0 0 0 -12.5 0" stroke-width="0.7" stroke-linecap="round" stroke="#333" fill="none" transform="rotate(0)"/>
    302       <path class="0.0" d="M 0 -12.5 A 12.5 12.5 0 0 0 -12.5 0" stroke-width="0.7" stroke-linecap="round" stroke="#333" fill="none" transform="rotate(-43)"/>
    303       <polyline points="-3,0 3,0" stroke-width="1" fill="none"/>
    304       <polyline points="0,-3 0,3" stroke-width="1" fill="none"/>
    305     </g>
    306     </g>
    307     </g>
    308   </g>
    309 
    310   <g class="io-group" transform="translate(-4 225)">
    311     <rect class="input-background" width="65" height="135" rx="5" transform="translate(10 0)"/>
    312 
    313     <g transform="translate(12 0)">
    314       <g transform="translate(3 5)"><svg id="SAMPLE_PWM_INPUT">
    315       <g transform="translate(12 12)">
    316         <circle cx="0" cy="0" r="5" stroke-width="1" stroke="#0f0" fill="#0f0"/>
    317         <circle cx="0" cy="0" r="10.5" stroke-width="3" stroke="#0f0" fill="none"/>
    318       </g>
    319     </svg></g>
    320       <text class="input-label" font-size="6pt" letter-spacing="1px" text-anchor="middle" transform="translate(15 40)">S/PW</text>
    321     </g>
    322     <g transform="translate(44 0)">
    323       <g transform="translate(3 5)"><svg id="SMOOTH_INPUT">
    324       <g transform="translate(12 12)">
    325         <circle cx="0" cy="0" r="5" stroke-width="1" stroke="#0f0" fill="#0f0"/>
    326         <circle cx="0" cy="0" r="10.5" stroke-width="3" stroke="#0f0" fill="none"/>
    327       </g>
    328     </svg></g>
    329       <text class="input-label" font-size="6pt" letter-spacing="1px" text-anchor="middle" transform="translate(15 40)">SMTH</text>
    330     </g>
    331 
    332     <g transform="translate(0 44)">
    333       <g transform="translate(12 0)">
    334         <g transform="translate(3 5)"><svg id="OFFSET_INPUT">
    335       <g transform="translate(12 12)">
    336         <circle cx="0" cy="0" r="5" stroke-width="1" stroke="#0f0" fill="#0f0"/>
    337         <circle cx="0" cy="0" r="10.5" stroke-width="3" stroke="#0f0" fill="none"/>
    338       </g>
    339     </svg></g>
    340         <text class="input-label" font-size="6pt" letter-spacing="0.5px" text-anchor="middle" transform="translate(15 40)">OFF</text>
    341       </g>
    342       <g transform="translate(44 0)">
    343         <g transform="translate(3 5)"><svg id="SCALE_INPUT">
    344       <g transform="translate(12 12)">
    345         <circle cx="0" cy="0" r="5" stroke-width="1" stroke="#0f0" fill="#0f0"/>
    346         <circle cx="0" cy="0" r="10.5" stroke-width="3" stroke="#0f0" fill="none"/>
    347       </g>
    348     </svg></g>
    349         <text class="input-label" font-size="6pt" letter-spacing="1px" text-anchor="middle" transform="translate(15 40)">SCL</text>
    350       </g>
    351 
    352       <g transform="translate(10 44)">
    353         <g transform="translate(2 0)">
    354           <g transform="translate(3 5)"><svg id="PITCH_INPUT">
    355       <g transform="translate(12 12)">
    356         <circle cx="0" cy="0" r="5" stroke-width="1" stroke="#0f0" fill="#0f0"/>
    357         <circle cx="0" cy="0" r="10.5" stroke-width="3" stroke="#0f0" fill="none"/>
    358       </g>
    359     </svg></g>
    360           <text class="input-label" font-size="6pt" letter-spacing="0.7px" text-anchor="middle" transform="translate(15 40)">V/OCT</text>
    361         </g>
    362         <g transform="translate(34 0)">
    363           <g transform="translate(3 5)"><svg id="RESET_INPUT">
    364       <g transform="translate(12 12)">
    365         <circle cx="0" cy="0" r="5" stroke-width="1" stroke="#0f0" fill="#0f0"/>
    366         <circle cx="0" cy="0" r="10.5" stroke-width="3" stroke="#0f0" fill="none"/>
    367       </g>
    368     </svg></g>
    369           <text class="input-label" font-size="6pt" letter-spacing="0.7px" text-anchor="middle" transform="translate(15 40)">RESET</text>
    370         </g>
    371       </g>
    372     </g>
    373   </g>
    374 
    375   <g transform="translate(77 99)">
    376     <polyline points="-30,0 30,0" stroke-width="0.7" transform="translate(33.5 131.5)"/>
    377     <polyline points="0,-30 0,30" stroke-width="0.7" transform="translate(33.5 131.5)"/>
    378 
    379     <g transform="translate(37 0)">
    380       
    381       <text class="input-label" font-size="6pt" letter-spacing="1px" text-anchor="middle" transform="translate(15 125)">0&#xB0;</text>
    382 
    383       <g transform="translate(0 86)">
    384         <g transform="translate(7 8)"><svg id="PHASE0_PARAM">
    385       <g transform="translate(8 8)">
    386         <polyline points="-3,0 3,0" stroke-width="1" stroke="#00f"/>
    387         <polyline points="0,-3 0,3" stroke-width="1" stroke="#00f"/>
    388         <circle r="7.5" stroke-width="1" stroke="#00f" fill="none"/>
    389       </g>
    390     </svg></g>
    391         <g transform="translate(15 16) rotate(90) translate(-20 -20)">
    392       <g transform="translate(20 20)">
    393         <g transform="rotate(-90) translate(10 0)">
    394           <polyline points="0,0 4,0" stroke-width="1"/>
    395         </g>
    396         <path d="M 0 -12.5 A 12.5 12.5 0 0 1 12.5 0" stroke-width="0.7" stroke-linecap="round" stroke="#333" fill="none" transform="rotate(20)"/>
    397         <path d="M 0 -12.5 A 12.5 12.5 0 0 1 12.5 0" stroke-width="0.7" stroke-linecap="round" stroke="#333" fill="none" transform="rotate(43)"/>
    398         <path d="M 0 -12.5 A 12.5 12.5 0 0 0 -12.5 0" stroke-width="0.7" stroke-linecap="round" stroke="#333" fill="none" transform="rotate(-20)"/>
    399         <path d="M 0 -12.5 A 12.5 12.5 0 0 0 -12.5 0" stroke-width="0.7" stroke-linecap="round" stroke="#333" fill="none" transform="rotate(-43)"/>
    400       </g>
    401     </g>
    402       </g>
    403 
    404       <g class="io-group" transform="translate(0 1)">
    405         <rect class="output-background" width="30" height="84" rx="5"/>
    406         <rect class="input-background" width="30" height="42" rx="5"/>
    407         <rect class="input-background" width="30" height="10" transform="translate(0 32)"/>
    408 
    409         <g transform="translate(3 4)"><svg id="PHASE0_INPUT">
    410       <g transform="translate(12 12)">
    411         <circle cx="0" cy="0" r="5" stroke-width="1" stroke="#0f0" fill="#0f0"/>
    412         <circle cx="0" cy="0" r="10.5" stroke-width="3" stroke="#0f0" fill="none"/>
    413       </g>
    414     </svg></g>
    415         <text class="input-label" font-size="6pt" letter-spacing="1px" text-anchor="middle" transform="translate(15 38)">PHS</text>
    416         <g transform="translate(3 46)"><svg id="PHASE0_OUTPUT">
    417       <g transform="translate(12 12)">
    418         <circle cx="0" cy="0" r="5" stroke-width="1" stroke="#f00" fill="#f00"/>
    419         <circle cx="0" cy="0" r="10.5" stroke-width="3" stroke="#f00" fill="none"/>
    420       </g>
    421     </svg></g>
    422         <text class="output-label" font-size="6pt" letter-spacing="2px" text-anchor="middle" transform="translate(15 80)">OUT</text>
    423       </g>
    424     </g>
    425 
    426     <g transform="translate(0 0)">
    427       
    428       <text class="input-label" font-size="6pt" letter-spacing="1px" text-anchor="middle" transform="translate(15 125)">90&#xB0;</text>
    429 
    430       <g transform="translate(0 86)">
    431         <g transform="translate(7 8)"><svg id="PHASE1_PARAM">
    432       <g transform="translate(8 8)">
    433         <polyline points="-3,0 3,0" stroke-width="1" stroke="#00f"/>
    434         <polyline points="0,-3 0,3" stroke-width="1" stroke="#00f"/>
    435         <circle r="7.5" stroke-width="1" stroke="#00f" fill="none"/>
    436       </g>
    437     </svg></g>
    438         <g transform="translate(15 16) rotate(0) translate(-20 -20)">
    439       <g transform="translate(20 20)">
    440         <g transform="rotate(-90) translate(10 0)">
    441           <polyline points="0,0 4,0" stroke-width="1"/>
    442         </g>
    443         <path d="M 0 -12.5 A 12.5 12.5 0 0 1 12.5 0" stroke-width="0.7" stroke-linecap="round" stroke="#333" fill="none" transform="rotate(20)"/>
    444         <path d="M 0 -12.5 A 12.5 12.5 0 0 1 12.5 0" stroke-width="0.7" stroke-linecap="round" stroke="#333" fill="none" transform="rotate(43)"/>
    445         <path d="M 0 -12.5 A 12.5 12.5 0 0 0 -12.5 0" stroke-width="0.7" stroke-linecap="round" stroke="#333" fill="none" transform="rotate(-20)"/>
    446         <path d="M 0 -12.5 A 12.5 12.5 0 0 0 -12.5 0" stroke-width="0.7" stroke-linecap="round" stroke="#333" fill="none" transform="rotate(-43)"/>
    447       </g>
    448     </g>
    449       </g>
    450 
    451       <g class="io-group" transform="translate(0 1)">
    452         <rect class="output-background" width="30" height="84" rx="5"/>
    453         <rect class="input-background" width="30" height="42" rx="5"/>
    454         <rect class="input-background" width="30" height="10" transform="translate(0 32)"/>
    455 
    456         <g transform="translate(3 4)"><svg id="PHASE1_INPUT">
    457       <g transform="translate(12 12)">
    458         <circle cx="0" cy="0" r="5" stroke-width="1" stroke="#0f0" fill="#0f0"/>
    459         <circle cx="0" cy="0" r="10.5" stroke-width="3" stroke="#0f0" fill="none"/>
    460       </g>
    461     </svg></g>
    462         <text class="input-label" font-size="6pt" letter-spacing="1px" text-anchor="middle" transform="translate(15 38)">PHS</text>
    463         <g transform="translate(3 46)"><svg id="PHASE1_OUTPUT">
    464       <g transform="translate(12 12)">
    465         <circle cx="0" cy="0" r="5" stroke-width="1" stroke="#f00" fill="#f00"/>
    466         <circle cx="0" cy="0" r="10.5" stroke-width="3" stroke="#f00" fill="none"/>
    467       </g>
    468     </svg></g>
    469         <text class="output-label" font-size="6pt" letter-spacing="2px" text-anchor="middle" transform="translate(15 80)">OUT</text>
    470       </g>
    471     </g>
    472 
    473     <g transform="translate(0 134)">
    474       
    475       <text class="input-label" font-size="6pt" letter-spacing="1px" text-anchor="middle" transform="translate(15 9)">180&#xB0;</text>
    476 
    477       <g transform="translate(0 10)">
    478         <g transform="translate(7 8)"><svg id="PHASE2_PARAM">
    479       <g transform="translate(8 8)">
    480         <polyline points="-3,0 3,0" stroke-width="1" stroke="#00f"/>
    481         <polyline points="0,-3 0,3" stroke-width="1" stroke="#00f"/>
    482         <circle r="7.5" stroke-width="1" stroke="#00f" fill="none"/>
    483       </g>
    484     </svg></g>
    485         <g transform="translate(15 16) rotate(-90) translate(-20 -20)">
    486       <g transform="translate(20 20)">
    487         <g transform="rotate(-90) translate(10 0)">
    488           <polyline points="0,0 4,0" stroke-width="1"/>
    489         </g>
    490         <path d="M 0 -12.5 A 12.5 12.5 0 0 1 12.5 0" stroke-width="0.7" stroke-linecap="round" stroke="#333" fill="none" transform="rotate(20)"/>
    491         <path d="M 0 -12.5 A 12.5 12.5 0 0 1 12.5 0" stroke-width="0.7" stroke-linecap="round" stroke="#333" fill="none" transform="rotate(43)"/>
    492         <path d="M 0 -12.5 A 12.5 12.5 0 0 0 -12.5 0" stroke-width="0.7" stroke-linecap="round" stroke="#333" fill="none" transform="rotate(-20)"/>
    493         <path d="M 0 -12.5 A 12.5 12.5 0 0 0 -12.5 0" stroke-width="0.7" stroke-linecap="round" stroke="#333" fill="none" transform="rotate(-43)"/>
    494       </g>
    495     </g>
    496       </g>
    497 
    498       <g class="io-group" transform="translate(0 43)">
    499         <rect class="input-background" width="30" height="84" rx="5"/>
    500         <rect class="output-background" width="30" height="42" rx="5"/>
    501         <rect class="output-background" width="30" height="10" transform="translate(0 32)"/>
    502 
    503         <g transform="translate(3 4)"><svg id="PHASE2_OUTPUT">
    504       <g transform="translate(12 12)">
    505         <circle cx="0" cy="0" r="5" stroke-width="1" stroke="#f00" fill="#f00"/>
    506         <circle cx="0" cy="0" r="10.5" stroke-width="3" stroke="#f00" fill="none"/>
    507       </g>
    508     </svg></g>
    509         <text class="output-label" font-size="6pt" letter-spacing="2px" text-anchor="middle" transform="translate(15 38)">OUT</text>
    510         <g transform="translate(3 46)"><svg id="PHASE2_INPUT">
    511       <g transform="translate(12 12)">
    512         <circle cx="0" cy="0" r="5" stroke-width="1" stroke="#0f0" fill="#0f0"/>
    513         <circle cx="0" cy="0" r="10.5" stroke-width="3" stroke="#0f0" fill="none"/>
    514       </g>
    515     </svg></g>
    516         <text class="input-label" font-size="6pt" letter-spacing="1px" text-anchor="middle" transform="translate(15 80)">PHS</text>
    517       </g>
    518     </g>
    519 
    520     <g transform="translate(37 134)">
    521       
    522       <text class="input-label" font-size="6pt" letter-spacing="1px" text-anchor="middle" transform="translate(15 9)">270&#xB0;</text>
    523 
    524       <g transform="translate(0 10)">
    525         <g transform="translate(7 8)"><svg id="PHASE3_PARAM">
    526       <g transform="translate(8 8)">
    527         <polyline points="-3,0 3,0" stroke-width="1" stroke="#00f"/>
    528         <polyline points="0,-3 0,3" stroke-width="1" stroke="#00f"/>
    529         <circle r="7.5" stroke-width="1" stroke="#00f" fill="none"/>
    530       </g>
    531     </svg></g>
    532         <g transform="translate(15 16) rotate(180) translate(-20 -20)">
    533       <g transform="translate(20 20)">
    534         <g transform="rotate(-90) translate(10 0)">
    535           <polyline points="0,0 4,0" stroke-width="1"/>
    536         </g>
    537         <path d="M 0 -12.5 A 12.5 12.5 0 0 1 12.5 0" stroke-width="0.7" stroke-linecap="round" stroke="#333" fill="none" transform="rotate(20)"/>
    538         <path d="M 0 -12.5 A 12.5 12.5 0 0 1 12.5 0" stroke-width="0.7" stroke-linecap="round" stroke="#333" fill="none" transform="rotate(43)"/>
    539         <path d="M 0 -12.5 A 12.5 12.5 0 0 0 -12.5 0" stroke-width="0.7" stroke-linecap="round" stroke="#333" fill="none" transform="rotate(-20)"/>
    540         <path d="M 0 -12.5 A 12.5 12.5 0 0 0 -12.5 0" stroke-width="0.7" stroke-linecap="round" stroke="#333" fill="none" transform="rotate(-43)"/>
    541       </g>
    542     </g>
    543       </g>
    544 
    545       <g class="io-group" transform="translate(0 43)">
    546         <rect class="input-background" width="30" height="84" rx="5"/>
    547         <rect class="output-background" width="30" height="42" rx="5"/>
    548         <rect class="output-background" width="30" height="10" transform="translate(0 32)"/>
    549 
    550         <g transform="translate(3 4)"><svg id="PHASE3_OUTPUT">
    551       <g transform="translate(12 12)">
    552         <circle cx="0" cy="0" r="5" stroke-width="1" stroke="#f00" fill="#f00"/>
    553         <circle cx="0" cy="0" r="10.5" stroke-width="3" stroke="#f00" fill="none"/>
    554       </g>
    555     </svg></g>
    556         <text class="output-label" font-size="6pt" letter-spacing="2px" text-anchor="middle" transform="translate(15 38)">OUT</text>
    557         <g transform="translate(3 46)"><svg id="PHASE3_INPUT">
    558       <g transform="translate(12 12)">
    559         <circle cx="0" cy="0" r="5" stroke-width="1" stroke="#0f0" fill="#0f0"/>
    560         <circle cx="0" cy="0" r="10.5" stroke-width="3" stroke="#0f0" fill="none"/>
    561       </g>
    562     </svg></g>
    563         <text class="input-label" font-size="6pt" letter-spacing="1px" text-anchor="middle" transform="translate(15 80)">PHS</text>
    564       </g>
    565     </g>
    566   </g>
    567 </svg>