1group() { 2 group() { 3 multmatrix([[1, 0, 0, 2], [0, 1, 0, 0], [0, 0, 1, 0], [0, 0, 0, 1]]) { 4 group() { 5 cylinder($fn = 0, $fa = 12, $fs = 2, h = 1, r1 = 0.7, r2 = 0.2, center = true); 6 } 7 } 8 multmatrix([[1, 0, 0, 2], [0, 1, 0, -2], [0, 0, 1, 0], [0, 0, 0, 1]]) { 9 group() { 10 cylinder($fn = 10, $fa = 12, $fs = 2, h = 1, r1 = 0.5, r2 = 0.5, center = true); 11 } 12 } 13 cube(size = [1, 1, 1], center = true); 14 } 15 multmatrix([[1, 0, 0, 4], [0, 1, 0, 0], [0, 0, 1, 0], [0, 0, 0, 1]]); 16 multmatrix([[1, 0, 0, 4], [0, 1, 0, -2], [0, 0, 1, 0], [0, 0, 0, 1]]); 17 multmatrix([[1, 0, 0, -2], [0, 1, 0, 0], [0, 0, 1, 0], [0, 0, 0, 1]]) { 18 group() { 19 sphere($fn = 8, $fa = 12, $fs = 2, r = 0.5); 20 } 21 } 22 multmatrix([[1, 0, 0, -2], [0, 1, 0, -2], [0, 0, 1, 0], [0, 0, 0, 1]]) { 23 group() { 24 difference() { 25 cube(size = [1, 1, 1], center = true); 26 cylinder($fn = 0, $fa = 12, $fs = 2, h = 2, r1 = 0.4, r2 = 0.4, center = true); 27 } 28 } 29 } 30 multmatrix([[1, 0, 0, 0], [0, 1, 0, 2], [0, 0, 1, 0], [0, 0, 0, 1]]) { 31 group() { 32 cube(size = [0.5, 0.5, 1], center = true); 33 } 34 } 35 multmatrix([[1, 0, 0, 0], [0, 1, 0, -2], [0, 0, 1, 0], [0, 0, 0, 1]]) { 36 sphere($fn = 16, $fa = 12, $fs = 2, r = 1); 37 } 38 multmatrix([[1, 0, 0, 0], [0, 1, 0, -4], [0, 0, 1, 0], [0, 0, 0, 1]]) { 39 group() { 40 multmatrix([[0, 0, 1, 0], [0, 1, 0, 0], [-1, 0, 0, 0], [0, 0, 0, 1]]) { 41 union() { 42 linear_extrude(height = 1.5, center = true, convexity = 1, scale = [1, 1], $fn = 0, $fa = 12, $fs = 2) { 43 circle($fn = 30, $fa = 12, $fs = 2, r = 0.3); 44 } 45 linear_extrude(height = 1.5, center = true, convexity = 1, scale = [1, 1], $fn = 0, $fa = 12, $fs = 2) { 46 projection(cut = false, convexity = 0) { 47 multmatrix([[0, 0, -1, 0], [0, 1, 0, 0], [1, 0, 0, 0], [0, 0, 0, 1]]) { 48 multmatrix([[1, 0, 0, 0], [0, 1, 0, 0], [0, 0, 1, 0.318198], [0, 0, 0, 1]]) { 49 cylinder($fn = 30, $fa = 12, $fs = 2, h = 0.212132, r1 = 0.212132, r2 = 0, center = true); 50 } 51 } 52 } 53 } 54 } 55 } 56 } 57 } 58 multmatrix([[1, 0, 0, -2], [0, 1, 0, -4], [0, 0, 1, 0], [0, 0, 0, 1]]) { 59 cube(size = [1.43239, 0.5, 0.5], center = true); 60 } 61 multmatrix([[1, 0, 0, 2], [0, 1, 0, -4], [0, 0, 1, -0.5], [0, 0, 0, 1]]) { 62 multmatrix([[0.05, 0, 0, 0], [0, 0.05, 0, 0], [0, 0, 0.05, 0], [0, 0, 0, 1]]) { 63 group() { 64 multmatrix([[1, 0, 0, 0], [0, 1, 0, 0], [0, 0, 1, 0], [0, 0, 0, 1]]) { 65 multmatrix([[1, 0, 0, 0], [0, 1, 0, 0], [0, 0, 1, 0], [0, 0, 0, 1]]) { 66 union() { 67 multmatrix([[1, 0, 0, 0], [0, 1, 0, 0], [0, 0, 1, 17], [0, 0, 0, 1]]) { 68 cylinder($fn = 30, $fa = 12, $fs = 2, h = 8, r1 = 6, r2 = 6, center = false); 69 cylinder($fn = 20, $fa = 12, $fs = 2, h = 10.5, r1 = 2.5, r2 = 2.5, center = false); 70 } 71 multmatrix([[1, 0, 0, -6], [0, 1, 0, -6], [0, 0, 1, 0], [0, 0, 0, 1]]) { 72 cube(size = [12, 22.8, 19.5], center = false); 73 multmatrix([[1, 0, 0, 0], [0, 1, 0, -5], [0, 0, 1, 17], [0, 0, 0, 1]]) { 74 cube(size = [12, 7, 2.5], center = false); 75 } 76 multmatrix([[1, 0, 0, 0], [0, 1, 0, 20.8], [0, 0, 1, 17], [0, 0, 0, 1]]) { 77 cube(size = [12, 7, 2.5], center = false); 78 } 79 } 80 multmatrix([[1, 0, 0, -6], [0, 1, 0, 0], [0, 0, 1, 19], [0, 0, 0, 1]]) { 81 multmatrix([[0, 0, 1, 0], [1, 0, 0, 0], [0, 1, 0, 0], [0, 0, 0, 1]]) { 82 group() { 83 multmatrix([[1, 0, 0, 0], [0, 1, 0, 0], [0, 0, 1, 0], [0, 0, 0, 1]]) { 84 linear_extrude(height = 12, center = false, convexity = 1, scale = [1, 1], $fn = 0, $fa = 12, $fs = 2) { 85 polygon(points = [[0, 0], [18, 0], [0, 4]], paths = [[0, 1, 2]], convexity = 1); 86 } 87 } 88 } 89 } 90 } 91 multmatrix([[1, 0, 0, -6], [0, 1, 0, -6], [0, 0, 1, 19], [0, 0, 0, 1]]) { 92 cube(size = [12, 6.5, 4], center = false); 93 } 94 } 95 } 96 } 97 } 98 } 99 } 100} 101 102