whirl/doc/mech.fpd |
| 1 | /* MACHINE-GENERATED ! */ |
| 2 | |
| 3 | frame bar { |
| 4 | __0: vec @(bar_w/2, top) |
| 5 | __1: vec @(-bar_w/2, -bot) |
| 6 | rect . __0 w |
| 7 | } |
| 8 | |
| 9 | frame led { |
| 10 | __0: vec @(led_w, led_h) |
| 11 | rect @ . w |
| 12 | } |
| 13 | |
| 14 | frame leds { |
| 15 | loop i = 0, 3 |
| 16 | |
| 17 | __0: vec @(-led_con, 0mm) |
| 18 | __1: vec .(0mm, i*led_p*n_leds) |
| 19 | frame led . |
| 20 | __2: vec @(0mm, n_leds*led_p) |
| 21 | __3: vec @(0mm, 2*n_leds*led_p) |
| 22 | __4: vec @(0mm, 3*n_leds*led_p) |
| 23 | __5: vec @(led_w/2-led_con, 0mm) |
| 24 | frame bar . |
| 25 | __6: vec @(0mm, top) |
| 26 | } |
| 27 | |
| 28 | frame cpu { |
| 29 | __0: vec @(-cpu_con, 0mm) |
| 30 | __1: vec .(cpu_w, -cpu_h) |
| 31 | rect __0 . w |
| 32 | } |
| 33 | |
| 34 | package "whirl" |
| 35 | unit mm |
| 36 | |
| 37 | table |
| 38 | { led_h, led_w, led_0, led_con, led_p, n_leds } |
| 39 | { 79.2mm, 15.6mm, 2.2mm, 2.8mm, 5mm, 16 } |
| 40 | |
| 41 | table |
| 42 | { cpu_h, cpu_w, cpu_con, cpu_gap } |
| 43 | { 43.75mm, 25.25mm, 7.25mm, 20mm } |
| 44 | |
| 45 | table |
| 46 | { bar_w, bar_bot, bar_top } |
| 47 | { 10mm, 50mm, 15mm } |
| 48 | |
| 49 | set top = 3*n_leds*led_p+led_h+bar_top |
| 50 | |
| 51 | set bot = cpu_gap+cpu_h+bar_bot |
| 52 | |
| 53 | set w = 1mm |
| 54 | |
| 55 | set s = 20mm |
| 56 | |
| 57 | set z = led_con-cpu_con+cpu_w |
| 58 | |
| 59 | __0: vec @(0mm, -cpu_gap/2) |
| 60 | frame cpu . |
| 61 | __1: vec @(0mm, cpu_gap/2) |
| 62 | frame leds . |
| 63 | measy cpu.__0 >> leds.__0 s |
| 64 | measy cpu.__1 >> cpu.__0 cpu_w+s |
| 65 | measx cpu.__0 >> cpu.__1 -cpu_h+s |
| 66 | measy led.__0 -> leds.__1 led_w+s |
| 67 | measy leds.__0 -> led.__0 s |
| 68 | measy cpu.__1 >> led.__0 cpu_w+3*s |
| 69 | measy leds.__0 >> led.__0 2*s |
| 70 | measx leds.__0 -> led.__0 s |
| 71 | measy cpu.__1 >> __1 -3*s |
| 72 | measy leds.__0 >> leds.__2 -z-s |
| 73 | measy leds.__0 >> leds.__3 -z-2*s |
| 74 | measy leds.__0 >> leds.__4 -z-3*s |
| 75 | measx bar.__1 >> bar.__0 s |
| 76 | measy bar.__1 >> bar.__0 5*s |
| 77 | measy bar.__1 >> cpu.__1 -4*s+2mm |
| 78 | measy bar.__0 << led.__0 led_w+s |
| 79 | measy leds.__4 >> leds.__6 -z-3*s+led_con |