BogaudioModules

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

FourFO-lowcontrast-pp.svg (28323B)


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